工厂类 - 停止init

时间:2013-04-18 07:20:26

标签: ios objective-c factory-pattern

我想创建一个工厂类来为我(特定类)创建对象。

Factory类只有类方法。有没有办法可以阻止在类上调用alloc init?

2 个答案:

答案 0 :(得分:1)

您可以在alloc和init中返回self。在这种情况下,self表示类对象,因此对该对象的调用方法将导致调用类方法

+ (id)alloc {
    return (id)self;
}

+ (id)init {
    return self;
}

答案 1 :(得分:1)

是的,你可以在你的界面定义init作为

- (id) init __unavailable;