<分区>
Possible Duplicate:
Factory pattern in C#: How to ensure an object instance can only be created by a factory class?
假设我有一个知道如何制作正方形的工厂类。如果我觉得只有 Factory 类知道如何制作一个正方形并且我想阻止其他人(即使在同一个程序集中)创建一个 Square 那么正确的(如果有这样的事情)方法是什么?
<分区>
Possible Duplicate:
Factory pattern in C#: How to ensure an object instance can only be created by a factory class?
假设我有一个知道如何制作正方形的工厂类。如果我觉得只有 Factory 类知道如何制作一个正方形并且我想阻止其他人(即使在同一个程序集中)创建一个 Square 那么正确的(如果有这样的事情)方法是什么?
最佳答案
根据您的情况,您可以这样做:
public class Square
{
// Only Square and classes nested within it can call this
private Square()
{
}
public class Factory
{
public Square CreateSquare()
{
return new Square();
}
}
}
然后:
Square.Factory factory = new Square.Factory();
Square square = factory.CreateSquare();
关于c# - 我可以限制哪些类可以实例化另一个类吗?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/9127032/