美文网首页
Objective-C便利初始化函数和便利构造器

Objective-C便利初始化函数和便利构造器

作者: yymyb | 来源:发表于2016-02-29 22:46 被阅读501次

用Student类来说明:

以下是Student.h头文件内容

#import

@interface Student : NSObject

{

//定义属性

   NSString *_name;//学生姓名

   int _age;//学生年龄

}

//信息展示的方法

-(void)showmessage;

-(void)showmessage1;

//便利初始化函数

-(instancetype)initWithName:(NSString *)name andAge:(int)age;

//便利构造器(类方法)//便利构造器一般命名的开头是类名

+(instancetype)studentWithName:(NSString *)name andAge:(int)age;

@end

然后就是Student.m的实现文件

#import "Student.h"

@implementation Student

//含姓名参数和年龄参数的构造函数(便利构造初始化函数)

- (instancetype)initWithName:(NSString *)name andAge:(int)age

{

   self = [super init];

   if (self) {

       _name=name;

       _age=age;

   }

   return self;

}

//便利构造器(是类方法)

+(instancetype)studentWithName:(NSString *)name andAge:(int)age

   {

       __autoreleasing Student *student = [[Student alloc] initWithName:name andAge:age];

       return student;

   }

-(void)showmessage

{

   NSLog(@"我的名字是 %@,%d岁。",_name,_age);

}

-(void)showmessage1

{

   NSLog(@"我的名字是 %@,%d岁。",_name,_age);

}

@end

接下来是main.m文件

#import

#import "Student.h"

int main(int argc, const char * argv[]) {

//便利历初始化函数

Student *stu=[[Student alloc]initWithName:@"张三" andAge:22];

//便利构造器

Student *stu1=[Student studentWithName:@"李四" andAge:23];

[stu showmessage];

[stu1 showmessage1];

/*

可以看出用便利构造器定义的对象的代码量少了

以前便利构造器的地位很重要,但现在也不是那么重要了

以前用便利构造器方便是因为是手动控制内存的释放,但现在是自动释放

因此便利构造器的地位不是那么的重要了,只需要知道用法即可

*/

   return 0;

}

相关文章

  • 便利初始化/便利构造器

    //便利初始化函数。便利构造器。 //Objective-C是C 的超集//包含C,OC增加了面向对象的特性

  • Objective-C便利初始化函数和便利构造器

    用Student类来说明: 以下是Student.h头文件内容 #import @interface Studen...

  • Swift便利构造函数convenience

    便利构造函数: convenience 便利构造函数是对构造函数的一种功能扩充, 可以在初始化之前,根据指定的条件...

  • UIViewController

    初始化 ① 自定义指定构造器方法 ② 便利构造器方法

  • Swift面试题总结

    1.convenience : 便利,使用convenience修饰的构造函数叫做便利构造函数 // 便利构造函数...

  • 便利构造函数

    convenience:便利,使用convenience修饰的构造函数叫做便利构造函数 便利构造函数通常用在对系统...

  • convenience 便利构造器

    convenience:便利,使用convenience修饰的构造函数叫做便利构造函数便利构造函数通常用在对系统的...

  • Swift4 便利构造器(convenience)

    convenience:便利,使用convenience修饰的构造函数叫做便利构造函数便利构造函数通常用在对系统的...

  • Swift构造函数和便利构造函数

    [转]Swift构造函数和便利构造函数 构造函数基础 构造函数是一种特殊的函数,主要用来在创建对象时初始化对象,为...

  • 构造函数

    类对象构造函数代理 规则1 指定构造器必须直接调用其父类指定构造器。规则2 便利构造器必须调用同一类另一个初始化...

网友评论

      本文标题:Objective-C便利初始化函数和便利构造器

      本文链接:https://www.haomeiwen.com/subject/aubgkttx.html