5.6 类和结构两个类型的比较 [Swift原创教程]

前端之家收集整理的这篇文章主要介绍了5.6 类和结构两个类型的比较 [Swift原创教程]前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。

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

1. 本节将类的引用特征和结构体进行比较,使你能够更清晰地明白类和结构体的区别。



2. 首先创建一个结构体。
3. 往结构体中添加两个属性。
4. 接着实例化结构体的对象,并设置它的两个属性的值。
5. 将该对象赋予一个变量,该变量也将具有和对象相同的属性,以及属性的值。
6. 这里修改新对象的属性的值。
7. 通过第13和第14行右侧的结果可以看出,结构体对象之间的值传递,采用的是拷贝的方式。两个对象都是相对独立的,一方发生变化,不会对另一方产生影响。
8. 接着我们再创建一个类。
9. 给类添加两个属性。
10. 接着添加一个初始化方法。
11. 在初始化方法中,给两个属性设置初始值。
12. 接着对类进行实例化,实例化的对象的两个属性,将拥有默认的值。
13. 然后将该对象赋予另一个对象。新对象拥有旧对象相同的类型、属性和方法,并且两者的两个属性的值也都是相同的。
14. 此时对第二个对象的属性的值进行修改。
15. 接着依次输出两个对象的属性,从右侧的实时反馈区可以看出,两个对象其实是对同一个实例的两个引用,当其中一个发生变化时,另一个也跟着发生变化。
16. 控制台输出的日志,也验证了类的引用特征,即类为引用类型,而结构体为值类型。
17. 最后使用全等号,来比较对同一个实例进行引用的两个对象。从右侧的结果可以看出,这两个对象是完全相同的。

猜你在找的Swift相关文章