Swift九 一: 方法 二: mutating 三: discardableResult (可丢弃结果) 四: 下标(函数) 五: 继承 六: 内存结构 七: 重写方法 override 八:...

一: 方法
二: mutating
三: discardableResult (可丢弃结果)
四: 下标(函数)
五: 继承
六: 内存结构
七: 重写方法 override
八: 重写属性
九: 属性观察器(子类继承)

一: 方法
截屏2022-05-02 下午6.07.18.png

// 类型方法, 只能调用类型属性
// 类型方法(oc类方法)内部调用self代表类Car

二: mutating
截屏2022-05-02 下午6.12.10.png

// 不加mutating报错 值类型不允许实例方法修改 init方法可以


截屏2022-05-02 下午6.13.28.png

// 注意: 类实例方法是可以修改存储属性的


截屏2022-05-02 下午6.16.24.png
三: discardableResult 函数可丢弃结果关键字

discardable 英释: 可丢弃


截屏2022-05-02 下午6.18.53.png
四: 下标

本质就是个函数, 可以像数组的写法一样调用函数


截屏2022-05-02 下午6.31.20.png

截屏2022-05-02 下午6.31.25.png

截屏2022-05-02 下午6.31.34.png

截屏2022-05-02 下午6.36.34.png

// 接收多个参数的下标


截屏2022-05-02 下午6.40.52.png
五: 继承
截屏2022-05-02 下午6.42.08.png

// 为什属性也能重写呢, 计算属性

六: 内存结构
截屏2022-05-03 上午8.35.18.png
七: 重写方法 overrride

1实例方法重写


截屏2022-05-03 上午8.49.13.png

//想实现父类 调用super
// 不想实现父类 不写super

2 类型方法重写
1 类中声明类型属性 可以用class 或是 static


截屏2022-05-03 上午9.00.34.png

// 子类重写父类类型方法时候, class static也要加上

八: 重写属性
截屏2022-05-03 上午9.32.34.png
8.1 重写实例属性

// 1 实例属性(存储属性)可以重写计算属性
// 2 计算属性可以重写计算属性

截屏2022-05-03 上午9.32.53.png
8.2 重写类型属性

// class修饰可以重写 static不能被重写


截屏2022-05-03 上午9.34.55.png
九: 属性观察器

// 子类可以添加观察器, 监听父类属性


截屏2022-05-03 上午11.42.12.png

// 复杂调用


截屏2022-05-03 上午11.45.31.png

// 计算属性不可以和属性观察器一起写, 但是通过子类可以实现对父类的计算属性实现监听
截屏2022-05-03 上午11.52.37.png
最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。