可能性の重複:
What's the correct method to subclass a singleton class in Objective -C?シングルトンデザインパターン
@implementation Singleton
- (id)init
{
self = [super init];
if (self) {
// Initialization code here.
}
return self;
}
+(Singleton *)singleton
{
static Singleton * singleton;
if (singleton == nil)
{
singleton =[[Singleton alloc]init];
}
return singleton;
}
@end
は今、これまでそうgood.Actually、初期化部分がprivateである必要があります。しかし、私は後でそれについて心配するでしょう。
今、シングルトンクラスをサブクラス化したいとします。どのように修正する必要がありますか?また
のがここでのコードを見てみましょう:
+(Singleton *)singleton
{
static Singleton * singleton;
if (singleton == nil)
{
singleton =[[Singleton alloc]init];
}
return singleton;
}
私はシングルトンメソッドは常に、サブクラスではなく、親クラス
さて私を返すように
+(self *)singleton
{
static self * singleton;
if (singleton == nil)
{
singleton =[[self alloc]init];
}
return singleton;
}
にそれを変更する必要がありますがコンパイルエラーが発生しました
私はサブクラスが "親" 。したがって、シングルトンをサブクラス化することは意味をなさない。
厳密なシングルトンは必要ありません。
私は
@interfaceクラスAたい:シングルトン @interface ClassBの:すべてにsingelton
は、クラスAとClassBの単一のインスタンスを参照シングルトンの方法がありますか?
だから、より良い方法をサブクラス化することができるシングルトンを作成する」と述べたあなたの質問(したがってタイトル)で乱雑になっています? "または「シングルトンをサブクラス化する方法」を参照してください。 – jball
サブクラス化すれば、もうシングルトンではありません....子IS-A親です。 – duffymo
[Objective -Cでシングルトンクラスをサブクラス化する正しい方法は何ですか?](http://stackoverflow.com/questions/3394033/whats-the-correct-method-to-subclass-a-singleton-classイン・オブ・オブジェクティブ-c)。また:http://stackoverflow.com/questions/1605083/how-do-i-make-other-classes-derive-from-a-singleton-class/1605127#1605127 –