【发布时间】:2010-07-18 00:42:31
【问题描述】:
我正在学习 ObjC 和 Cocoa,这也是我第一次认真涉足编程领域。
我对在实例上调用的 initWith 方法和在类上调用的工厂方法之间的区别感到困惑。
首先,为什么它们被称为“工厂”方法,我称之为“InitWith”方法是否有合适的术语?
其次,功能上的区别是什么?仅仅是内存管理的影响(工厂方法返回一个自动释放的对象)吗?
例如,[NSString stringWithString: (NSString*)aString] 和 [[NSString alloc] initWithString: (NSString*)aString] 之间的真正区别是什么?
【问题讨论】:
标签: objective-c cocoa class methods instance