Inheritance
- 类能添加属性观察者到继承属性中,无论是存储还是计算属性
- 某个类没有继承于其他类,就是基类
- Swift 不会继承一个通用的基类,类在定义时没有指定一个父类,自动变成基类
class SomeSubclass: SomeSuperclass {
}
Usage
- 子类重写 override
- 访问父类方法,属性和下标 super
重写属性 getter and setter
- 可以继承一个只读的属性提供可读写属性
- 不可继承一个可读写的属性提供只读属性
- 如果重写一个属性的 setter,必须重写 getter 方法
- 如果不想修改到继承的值可以直接 return super.someProperty
重写属性观察
- 不能添加属性观察去继承 常量存储属性 或 只读的计算属性
- 不能对于一个属性同时重写 setter 和 属性观察者。如果需要观察值的改变,又需要自定义 setter,可以只简单观察任何值改变在 setter 中
阻止重写
- final 关键字:Function / Property / Subscripts
- extension 也能用
- final class 标记为不能被继承