1.
2.
3
4.
在子类种不允许声明和父类中同名的属性,子类从父类继承了,就意味着子类已有了父类的成员,再定义就重复了!
5.
super
只能调用方法,不能访问属性。
self也可以调符合123的方法!但是建议用 super,这样代码的可读性变得很高!
6.
访问修饰符(只能修饰属性,不能修饰方法)
同理,纯私有(只在@imple中实现未在@interface中声明)的方法和属性,也是可以被继承,但不能被访问。用上面方法可以验证!
7.
在 @implementation中定义属性即可实现真私有,在外部xcode也不会提示,即使加上@public也不行!
对比:私有变量的话可以不用大括号,
位置在#import"Person.h"下面即可,在
@implementation上下都可以。私有变量
可以定义式时赋初值,而左图私有属性
定义时不能赋值,只能通过self->_height赋值!
8.程序种多态
9.
11.