6.8 实例的引用特征和Swift的内存管理 [Swift原创教程]



1. 开发语言使用自动引用计数,跟踪并管理应用分配的内存。当实例不再被使用时,会自动释放这些类的实例所占用的内存。


2. 本节课将为你演示自动引用计数对实例引用的管理,首先定义一个用来创建实例的类。


3. 给类添加一个属性。


4. 添加一个初始化方法,用来设置属性的值。


5. 接着添加一个析构方法,当该类的实例的引用计数为0时,该方法将被调用(也许不会立即被调用)。


6. 然后初始化一个该类的实例对象,并初始化对象的属性的值。


7. 将该对象赋予另外两个变量,这样该对象的引用计数为3。


8. 从右侧的结果可以看出,这三个变量都是对类的同一个实例的引用。


9. 接着将实例的第一个引用设置为空,此时右侧的结果显示该引用已经为空,实例对象的引用计数变为2。


10. 从打开的控制台可以看出,析构方法并没有被调用,否则会输出相应的日志。


11. 继续将实例的第二个引用也设置为空,引用计数降为1,由于该实例仍然被引用,所以没有输出析构日志。


12. 将实例的第三个引用也设置为空,引用计数降为0,由于该实例再也没有被引用,所以在控制台输出了析构日志。




本文整理自:《Swift4互动教程》,真正的[手把手]教学模式,用最快的速度上手iOS开发和Swift语言,苹果商店App Store免费下载:https://itunes.apple.com/cn/app/id1320746678,或扫描本页底部的二维码。课程配套素材下载地址:资料下载

0