Swift语法--继承

继承

Swift通过检查重写定义都有一个与之匹配的父类定义来确保重写是正确的

定义一个基类

子类

基于现有类创建新类的行为

重写

override

没有使用override关键字的重写会在编译时被诊断为错误

访问父类的方法、属性和下标脚本

重写方法

重写属性

可以在继承类里为父类的属性提供自定义的的gettersetter,或者添加属性观察器

重写属性的GETTER和SETTER

继承的属性是存储属性还是计算属性对子类不透明,它仅仅知道继承的属性有个特定的名字和类型

可以通过在子类重写里为继承而来的只读属性添加Getter和Setter来把它用作可读写属性,但是不能把一个继承而来的可读写属性表示为只读属性

依然要添加override关键字

重写属性观察器

不能给继承而来的常量存储属性或者只读的计算属性添加属性观察器。因为这些属性的值不能被设置

也不能为同一个属性同时提供重写的setter和重写的属性观察器。如果想要监听属性值的改变,并且已经为那个属性提供了一个自定义的setter,那么可以从自定义的setter里监听任意值的改变

阻止重写

在方法、属性或者下标前面加上final修饰符
类前面也可以添加final,表示不能被继承

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容