0
在Objective-C中,我該如何調用對象的超類方法?調用超類方法
例如,假設我有一個對象「foo」的實例。
「foo」有一個被重寫的方法。我不想調用這個重寫方法。相反,我想調用foo對象實例上的原始方法。
你不能做:
[[instance super] super_method];
據我所知。那麼我該怎麼做呢?
我知道我可以添加一個方法爲foo:
-(void) callsuper
{
[super super_method];
}
做:
[foo callsuper];
其他方法嗎?我真的不想創建一個方法來做到這一點。
爲什麼不直接調用'[super someMethod];' - 爲什麼要創建一個函數來調用它? –
someMethod被foo的類覆蓋;他想通過傳遞子類的實現,並直接調用超類。真的有可能嗎?我很好奇這樣做的目的/好處是什麼? – PeterWong
它是否有任何設計模式?我們可以直接調用[fooInstance fooClassMethod] ;. –