继承、初始化?方法、便利构造器

继承特点

OC中只允许单继承。

没有?父类的类称为根类,OC中的根类是NSObject(祖宗)。

继承的内容:所有实例变量和?方法。

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

继承具有传递性

完成初始化方法

- (void)init

{

//给super发送init消息:即执行父类中实现的init方法

self = [super init];

if (self)

{

//初始化设置

}

//返回初始化完成的对象

return self;

}

上面称作  指定初始化方法

指定初始化方法只有一个 其他初始化方法有多个

便利构造器 (+方法)

返回本类型的实例,方法名以类名开头。

内部实现:封装了alloc和初始化方法。使用起来更加简洁

1、声明和实现便利构造器

+ (Person *)personWithName:(NSSting *)name

{

Person *p = [[Person alloc]  initWithName:name]

return p;

}

2、使用便利构造器创建对象

Person *P = [Person personWithName:@“ianhao.cn”];

时间: 2024-07-31 01:21:18

继承、初始化?方法、便利构造器的相关文章

OC基础:继承.初始化方法,便利构造器

继承: 1.单向继承,一个类只能有一个父类,一个父类可以有多个子类. 2.单向继承,基类(根类)是OSObject 3.子类可以继承父类的属性和方法 当父类的方法不满足子类的需求时,子类可以重写父类的方法,重写父类的方法,在子类中不需要再次声明. 1.完全重写 2.部分重写   使用super 建立继承关系之后,子类可以继承父类的: 1.实例变量,@[email protected]修饰情况之下 2.公开的方法 一个方法如果在.h中声明了,那么这个方法就是公开的方法,如果没有声明,则是私有的.

第三讲.继承,完整初始化方法,遍历构造器,多态(代码) 另附植物大战僵尸练习

//初始化和遍历构造器使用 //person.h文件 1 #import <Foundation/Foundation.h> 2 3 @interface Person : NSObject 4 5 { 6 7 NSString *_name; 8 int _age; 9 NSString *_sex; 10 11 12 } 13 14 +(id)PersonWithName:(NSString*)name age:(int)age; 15 -(id)initWithName:(NSStrin

Objective-C 继承、初始化方法、便利构造器

继承.初始化方法.便利构造器 今天我们要学习继承 初始化方法 以及遍历构造器 首先我们要理解一些概念性的东西. 继承: 在OC里,继承是单继承的,所谓的单继承就是一个子类继承一个父类,例如我们之前创建的Person类是继承于NSObject的.回顾一下继承的格式 @interface Person : NSObject //在冒号后面是继承的父类. 人继承与NSObject 子类是只能继承一个父类,但父类却可以有多个子类.例如: @interface Student : Person // 学生

继承,初始化

继承 初始化方法 继承继承的上层: 父类 ,继承的下层:子类继承是单向的,不能相互继承.继承具有传递性:A继承于B,B继承于C,A具有B和C的特征和行为子类能继承父类全部的特征和行为.面向对象提供了的继承语法,能够大大简化代码,把公共的方法和实例变量写在父类里,子类只需要写自己独有的实例变量和方法即可继承既能保证类的完整,又能简化代码,让类与类之间的关系更加紧密. 继承特点OC中只允许单继承没有父类的类称为根类,OC中的根类是NSObject(祖宗). 继承的内容:所有实例变量和方法.如果子类不

OC实例变量初始化方法

OC实例变量初始化方法1. 使用实例setter方法 默认初始化方法 + setName:xxx setAge:xxx2. 使用实例功能类方法,默认初始化方法 + setName:xxx age:xxx3.使用实例初始化方法 initWith开头的方法4.使用构造器 类名+With…以Person  Student两个类为例1. 使用实例 setter方法这是最麻烦的方法 @interface Person : NSObject { NSString *_name; NSString *_sex

Objective-C学习笔记_继承、初始化方法、便利构造器

一.继承 继承的上层:父类,继承的下层:子类.继承是单向的,不能相互继承.继承具有传递性:A继承于B,B继承于C,A具有B和C的特征和?为.子类能继承父类全部的特征和行为. 例题 打僵尸.需求: 1.定义普通僵尸类: 实例变量:僵尸总血量.僵尸每次失血量. 方法:初始化方法(总血量).被打击失血.死亡. 2.定义路障僵尸类: 实例变量:僵尸总血量.僵尸每次失血量,道具,弱点. 方法:初始化方法(总血量).被打击失血.失去装备.死亡. 3.定义铁桶僵尸类: 实例变量:僵尸总血量.僵尸每次失血量,道

OC03-继承,便利构造器,初始化方法

继承 继承 继承的主要作用就是保证类的完整以及简化代码. 使用时把公共的方法和实例变量写在父类里,子类只需要写自己独有的实例变量和方法就行 特点: 只允许单继承 OC中的根类是NSObject 继承的内容:是所有实例变量和方法 如果子类中不想用父类方法的实现,可以重写方法 注意: 继承的上层是父类,下层是子类 继承是单向的,不能相互继承 继承是有传递性的,即如果A继承于B,B继承于C,A就具有B和C的特征和行为 子类可以继承父类全部的特征和行为 继承的实现 #import <Foundation

Objective-C( 继承,初始化方法)

一.继承 1.继承的上层:父类,继承的下层:子类 2.继承是单向的 3.继承具有传递性:子类继承父类的特征和行为 4.子类扩展父类,更加具体 oc中的继承 1.oc中的继承,即一个类继承另一个类: 2.被继承的类称为父类或超类: 3.继承的类为子类 继承的特点 1.oc中只允许单继承 2.没有父类的类称为根类.oc中的根类是  NSObject 3.继承的内容:除了私有变量外的所有实例变量和方法 4.子类可以重写父类的方法 super 1.oc中的关键字 2.作用:给super发送消息,可执行父

【学习ios之路:Object-C】继承,便利构造器.NSString应用

1.继承定义 公共父类使用场景:当多个类之间存在部分相同的特征以及行为时,为了防止多个类中写重复代码,新建一个公共的父类,父类中填写多个类中相同的特征以及行为,让多个类继承即可. 2.继承特点 *.继承内容:父亲全部的实力变量以及方法 *.继承过来的内容的所有权:继承过来的内容是自己的,只不过来源于父类, *.OC中只允许单继承,也就是一个类只能有一个父类, *.继承具有传递性.A继承自B,B继承自C,A拥有B和C的所有的内容. *.继承不具备互逆性;不能A继承B,B再继承A. *.继承过来的内