Swift学习43:继承
前言
- swift中,
只有类支持继承
- swift中
类没有统一的基类
。 - 没有继承任何父类的类是基类,但其实它是有一个父类的,叫
_SwiftObject
- 被
final
修饰的属性、方法、下标
禁止被重写
,禁止被继承
定义基类
不继承任何类的类是
基类
没有指定特定的父类的类都以基类的形式创建
示例
1 | // 基类 |
子类
子类
是基于父类
创建的新类子类写在父类前面,用
:
分割
1 | class Teacher: Person { |
重写
- 子类可以定义自己的
属性、方法、下标
及其他的特征,可以从父类继承
,就是所谓的重写
- 子类可以
继承
父类的属性、方法、下标
,前面加override
关键字
1 | // 基类 |
访问父类的 属性、方法、下标
- 通过使用
super
前缀访问父类的、属性、方法、下标脚本
super.someMethod() 重写父类的方法
super.someProperty 重写父类的属性
super[someIndex] 重写父类的下标脚本
重写方法
1 | // 父类 |
重写属性的getter和setter方法
可以自定义一个gett或setter来重写父类继承的属性
1 | class Person { |
重写属性观察器
可以为继承的属性添加属性观察器
不可以为继承的
常量存储属性
或只读的计算属性
添加属性观察器不能为同一个属性同时提供重写
setter和属性观察器
禁止重写
- 可以用
final
关键字禁止被继承
- 禁止继承属性: final var(变量属性)、final let(常量属性)
- 禁止继承方法:final func(实例方法)、final class(类方法)、
- 禁止继承下标:final subscribe(下标)
- Post title:Swift学习43:继承
- Post author:张建
- Create time:2023-03-09 20:33:59
- Post link:https://redefine.ohevan.com/2023/03/09/Swift课程/Swift学习43:继承/
- Copyright Notice:All articles in this blog are licensed under BY-NC-SA unless stating additionally.