是否有可能拥有一个嵌套类是公共的,但只能由其父类实例化,例如:
public class parent
{
public class child
{
public string someValue;
}
public child getChild()
{
return new child();
}
}
在这个例子中,“child”类可以由“parent”之外的代码实例化。我希望外部代码能够查看“child”类型,但不能构建自己的“child”实例。
例如:
var someChild = new parent.child();
internal
构造函数也可能是合适的;是的,它不会阻止程序集内部的代码创建实例,但通常需要阻止其他程序集中的代码创建实例。 - Andras Zoltan