继承 完整的初始化方法和便利构造器

1.继承
         (1)继承的上层是 (冒号后边的)父类,继承的下是 (冒号前边的)子类。
         (2)继承是单向的,不能相互继承。
         (3)继承具有传递性:A 继承于 B ,B 继承于 C,A 具有 B 和 C 的特征和行为。
             子类能继承父类的所有特征和行为。
         (4)面向对象提供了继承语法:能够大大简化代码。把公共的方法和实例变量卸载父类里,子类只需写自己独有的实例变量和方法。
         (5)继承既能保证类的完整,又能简化代码。
    继承的特点:
         (1)OC中只允许单继承;没有父类的类称为根类;OC中的根类是NSobject(祖宗)。
         (2)继承的内容:所有实例变量和方法

         (3)如果子类不满意父类的方法实现,可以重写(overwrite)父类的方法。

2.完整的初始化方法
       - (id)init{
      //给super发送init消息,即执行父类中的init方法
          self = [super init];
          if(self){
         //子类自己的初始化设置;
      }
      //初始化完成,返回对象自己本身
        return self;
      }
3.用便利构造器创建对象

(1)在.h中声明

+ (id)personWithName:(NSString *)name;

(2)在.m中实现

+ (id)personWithName:(NSString *)name{

    Person *p = [[Person alloc] initWithName:name];
    return p;
}

(3)在.main中进行创建对象

 Person *baizihua = [Person personWithName:@"白子画"];
        NSLog(@"%@",[baizihua name]);

         

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值