我正在制作一个返回我的对象的新实例的工厂方法。我想阻止任何使用我的代码的人在我的对象上使用公共构造函数。有没有办法做到这一点?
这通常是如何完成的:
public abstract class CarFactory
{
public abstract ICar CreateSUV();
}
public class MercedesFactory : CarFactory
{
public override ICar CreateSUV()
{
return new Mercedes4WD();
}
}
然后我想限制/阻止其他开发人员(包括几个月后的我)制作 Mercedes4WD 的实例。但是让他们调用我的工厂方法。如何?