Swift - Inheritance

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 标记为不能被继承
最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
【社区内容提示】社区部分内容疑似由AI辅助生成,浏览时请结合常识与多方信息审慎甄别。
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容

  • 这是16年5月份编辑的一份比较杂乱适合自己观看的学习记录文档,今天18年5月份再次想写文章,发现简书还为我保存起的...
    Jenaral阅读 8,008评论 2 9
  • 123.继承 一个类可以从另外一个类继承方法,属性和其他特征。当一个类继承另外一个类时, 继承类叫子类, 被继承的...
    无沣阅读 5,274评论 2 4
  • 下标脚本 下标脚本 可以定义在类、结构体和枚举这些目标中,可以认为是访问集合(collection),列表(li...
    cht005288阅读 3,301评论 0 0
  • 20- 枚举,枚举原始值,枚举相关值,switch提取枚举关联值 Swift枚举: Swift中的枚举比OC中的枚...
    iOS_恒仔阅读 6,878评论 1 6
  • 一问三声好,财富跟你跑 现象:富有的人越富有,贫穷的人越贫穷 富人-思维-杠杆 把话讲出去,把钱收回来 梦想有多大...
    主持人刘舒涵阅读 2,806评论 0 0

友情链接更多精彩内容