c# – 我可以将一个课程内部封闭,但外部密封吗?

前端之家收集整理的这篇文章主要介绍了c# – 我可以将一个课程内部封闭,但外部密封吗?前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。
在C#中,是否可以创建一个可以从内部派生(未密封)的类,但是然后阻止其他人在外部引用我的库继承自我的公共类(密封)?

解决方法

我想你可以使类的构造函数内部,以便只有程序集中的其他类可以从它们派生,如果你仍然需要创建该类的实例,你可以提供一个工厂方法来返回实例.

编辑以添加示例:

public class MyFoo
{
    internal MyFoo()
    {
    }

    public static MyFoo CreateFoo()
    {
        return new MyFoo();
    }
}
原文链接:https://www.f2er.com/csharp/98856.html

猜你在找的C#相关文章