オブジェクトの新しいインスタンスを返すファクトリメソッドを作成しています。私のコードを使用している人が私のオブジェクトでパブリックコンストラクターを使用できないようにしたいと思います。これを行う方法はありますか?
これは通常どのように達成されますか:
public abstract class CarFactory
{
public abstract ICar CreateSUV();
}
public class MercedesFactory : CarFactory
{
public override ICar CreateSUV()
{
return new Mercedes4WD();
}
}
次に、他の開発者(数か月以内に私を含む)がMercedes4WDのインスタンスを作成することを制限/防止したいと思います。しかし、彼らに私のファクトリメソッドを呼び出させます。方法?