1

我正在为 Objective C 执行此操作,但这是各种常用语言中的常见行为。

我知道静态变量或方法不会继承给子类,但是我想知道哪种方法是执行以下操作的最佳方法:

我有几个类(比如 10 个)具有以下基本模型:

static id A

@interface MyClass

 + (void) doSomethingWithA;

@end


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

@end

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

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

在这种情况下,最佳做法是什么?

4

1 回答 1

0

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

于 2012-12-04T07:11:50.850 回答