在objective-c中对initialize方法进行子类化

JPC*_*JPC 1 cocoa objective-c

我有一个Foo实现+(void)initialize方法的类.我也有一个类的子类Foo.当我实例化子类时,该initialize方法也被调用Foo,我不想要.我该如何防止这种情况?

谢谢.

Cos*_*que 7

在您的场景中(当涉及子类时),您应该检查initialize发送方法的类:

+ (void) initialize
{
    if ( self == [MyClass class] )
    {
        // Do something here only once
    }
}
Run Code Online (Sandbox Code Playgroud)