GeekBand OC 6. 继承

面向对象

1. 封装

2. 继承:一个类型在另一个类型的基础上扩展

3. 多态:不同类型针对同一接口的不同实现方式

继承

每一个类有且只有一个基类,如NSObject

1. 继承了什么?实例变量、属性、实例方法、类方法

例如[

(@public定义公共实例变量)

_data这个实例变量定义在Shape里面,但是由于Circle继承了Shape,因此Circle中也可以访问_data(使用->)

no(属性)也是从Shape里面继承的

draw、move、print等实例方法,process(类方法)也都是从Shape里面继承的

2. 所有类的根类:NSObject

阅读参考文档

子类复用父类成员

公有和私有实例变量都会被子类继承,但是访问不到

继承的内存模型

子类里能够找到和父类完全一样的内存结构

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容