我正在爲Objective C做這件事,但這是各種常見語言中的常見行爲。靜態變量和方法的繼承模型
我知道,靜態變量或方法不能被繼承到子類,但是我想知道這是做以下的最佳方法:
我有幾個類(如10)具有以下基本型號:
static id A
@interface MyClass
+ (void) doSomethingWithA;
@end
@implementation MyClass
+ (void) doSomethingWithA {
[A doSomething];
[A doOtherThing];
//do more things
}
@end
的代碼是完全對所有的類相同,但這些方法是靜態的(我只希望有一個以每一類的一個實例),那麼我不能使用子類來避免代碼重複。
我真的想避免複製和粘貼這麼多的代碼。
這種情況下的最佳做法是什麼?
使用繼承方便嗎?考慮繼承的組件方法 - 移動所有使用靜態的邏輯來分離組件類並將其附加到類中。 – nikita