黑马程序员技术交流社区
标题:
用类方法创建对象和用init创建对象的区别?
[打印本页]
作者:
gululu23
时间:
2014-11-2 00:03
标题:
用类方法创建对象和用init创建对象的区别?
请教一下,用类方法创建自定义对象和用init创建同样功能的自定义对对象,有什么区别呢?
部分代码如下:
+ (id)studentWithName:(NSString *)name andAge:(int)age andNo:(int)no andBook:(Book *)book
{/*
Student *st = [[[self alloc] init] autorelease];
st.name = name;
st.age = age;
st.no = no;
st.book = book;
*/
Student *st = [self personWithName:name andAge:age];
st.no = no;
st.book = book;
return st;
}
- (id)initWithName:(NSString *)name andAge:(int)age andNo:(int)no andBook:(Book *)book
{
if (self = [super init])
{
self.name = name;
self.age = age;
self.no = no;
self.book = book;
}
return self;
}
作者:
doudou33420
时间:
2014-11-2 02:02
没感觉有区别. 都是创建对象. 类方法创建可能就少打几个代码方便点吧. 要么就是类方法是开辟空间初始化一起做 对象方法是 之前开辟过空间了 他制作初始化操作
欢迎光临 黑马程序员技术交流社区 (http://bbs.itheima.com/)
黑马程序员IT技术论坛 X3.2