黑马程序员技术交流社区

标题: OC学习笔记之autorelease快速创建对象的应用 [打印本页]

作者: chunhuayun    时间: 2015-10-8 15:05
标题: OC学习笔记之autorelease快速创建对象的应用
【要求】创建一个学生对象,要求快速创建,并初始化年龄为指定的值

例如:在student类实现中,自定义以下两个方法:
  1. //初始化年龄
  2. -(instancetype)initWithAge:(int)age{
  3.     if (self = [super init]) {
  4.         self.age = age;
  5.     }
  6.     return self;
  7. }

  8. +(instancetype)studentWithAge:(int) age{
  9.     //快速创建对象,并管理内存
  10.     return [[[Student alloc] initWithAge:age]autorelease];
  11. }
  12. -(void)dealloc{
  13.    
  14.     NSLog(@"This Student dead....");
  15.     [super dealloc];
  16. }
复制代码

在main.m文件中
  
  1. @autoreleasepool {
  2.         Student *st = [Student studentWithAge:24];
  3.         NSLog(@"student age = %d",st.age);
  4.     }
复制代码

打印结果:
2015-10-06 21:51:18.087 MRCDemo[3265:303] student age= 24
2015-10-06 21:51:18.089 MRCDemo[3265:303] This Studentdead....
2015-10-06 21:51:18.090 MRCDemo[3265:303] This persondead....


作者: 超の    时间: 2015-10-8 15:48
挺好的,复习了一下啊!
作者: jing397    时间: 2015-10-8 18:48
学习啦!!!
作者: 杨志昆    时间: 2015-10-8 19:24
开始学习OC了,很有用




欢迎光临 黑马程序员技术交流社区 (http://bbs.itheima.com/) 黑马程序员IT技术论坛 X3.2