- 继承是在类与类之间的;
- 做一个普遍类让别人来继承;冒号后面可以继承;
- 继承了别人,就相当于拥有了别人里面的所有成员变量和方法;
- 一个父类可以有多个子类;
- 继承的好处:可以抽取重复代码;建立了类之间的关系;
- 类方法new是在NSObject这个父类里面的;
- NSProxy不是继承NSObject的;
- 如果你写一个类,谁也不想继承,但一定要继承NSObject这个根类;
- 继承的注意点:
- 父类要在子类的前面;
- java里面允许
- OC里面不允许子类和父类拥有相同名称的成员变量;
- 子类里面可以拥有与父类相同的方法;子类会优先调用自己的方法,如果自己没有找到,会往父类找,直到找到为止,找不到会报错;
- 子类重新实现父类中的方法,我们称为重写;
- 子类重新实现父类中的某个方法,覆盖父类以前的做法;
- 每个类里面都有个superclass
- isa是指向对象对应的类;
- 继承让代码的耦合性变强;不好;
- 继承不能乱用:比如学生有成绩,但是学生就不能继承成绩;因为在现实生活中不合理;在这种情况下,我们用组合;
- Score *_score;
- 继承:xx是xxx(主要是看这句话能不能成立,如学生是成绩就不合理)
- 组合:xxx拥有xxx