我有一個Parent類和一個類Child。孩子來自父母。我只實例化Child類,但父類不會直接初始化,只能由子類初始化。 我至少需要父母是一個單身人士。如果這不起作用,孩子也是單身人士也可以。 我嘗試以下,但沒有將其更改爲單:Objective C具有類層次結構的單身人士
static MySingleton *sharedSingleton;
+ (void)initialize
{
static BOOL initialized = NO;
if(!initialized)
{
initialized = YES;
sharedSingleton = [[MySingleton alloc] init];
}
}
子類中調用[超級的init]實例化父。你能幫我嗎?
編輯:我爲我的解決方案(體系結構)添加一些背景信息:我有一個Web服務客戶端,它具有到Web服務的連接。我有一個基類(Parent),它具有關於連接的信息(經過身份驗證,如何連接等),並且具有不同的從此基類派生的子類。對不同子類的需求是,一個孩子負責一組Web服務邏輯,另一個孩子負責另一組Web服務邏輯。問題是,我想連接信息是單身人士(因爲他們都只使用一個連接,而不是很多)。
'initialized'變量是多餘的,爲什麼不檢查if(sharedSingleton == nil)'? – 2012-11-09 17:12:58
也許你可以簡單地解釋你想達到的目標,因爲父母是一個單身人士,而從它身上衍生出來的孩子對我來說看起來並不麻煩。也許有更好的解決方案? – Anton