静态变量和方法的继承模型

时间:2012-12-04 05:44:37

标签: design-patterns inheritance model static subclass

我正在为Objective C做这个,但这是各种常见语言中的常见行为。

我知道静态变量或方法不会继承到子类,但是我想知道哪种方法可以做到以下几点:

我有几个类(比如10个),其中包含以下基本模型:

static id A

@interface MyClass

 + (void) doSomethingWithA;

@end


@implementation MyClass
    + (void) doSomethingWithA {
        [A doSomething];
        [A doOtherThing];
        //do more things
    }

@end

所有类的代码完全相同,但由于方法是静态的(我只希望每个类有一个A实例),所以我不能使用子类来避免代码重复。

我真的想避免复制和粘贴这么多代码。

这种情况下最好的做法是什么?

1 个答案:

答案 0 :(得分:0)

为什么不使用继承和所需的一切来创建实例方法,并创建静态实例(例如单例)来调用它们?