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

前端之家收集整理的这篇文章主要介绍了6.8 实例的引用特征和Swift的内存管理 [Swift原创教程]前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。

原文:http://coolketang.com/staticCoding/5a99261fd50eee2ea3037740.html

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



2. 本节课将为你演示自动引用计数对实例引用的管理,首先定义一个用来创建实例的类。
3. 给类添加一个属性。
4. 添加一个初始化方法,用来设置属性的值。
5. 接着添加一个析构方法,当该类的实例的引用计数为0时,该方法将被调用(也许不会立即被调用)。
6. 然后初始化一个该类的实例对象,并初始化对象的属性的值。
7. 将该对象赋予另外两个变量,这样该对象的引用计数为3。
8. 从右侧的结果可以看出,这三个变量都是对类的同一个实例的引用。
9. 接着将实例的第一个引用设置为空,此时右侧的结果显示该引用已经为空,实例对象的引用计数变为2。
10. 从打开的控制台可以看出,析构方法并没有被调用,否则会输出相应的日志。
11. 继续将实例的第二个引用也设置为空,引用计数降为1,由于该实例仍然被引用,所以没有输出析构日志。
12. 将实例的第三个引用也设置为空,引用计数降为0,由于该实例再也没有被引用,所以在控制台输出了析构日志。

猜你在找的Swift相关文章