11.Swift 中的类和结构体

11.Swift 中的类和结构体,第1张

概述Swift中也有类和结构体, 分别用struct和class声明, 两则之间有很多相同之处, 比如 1.定义属性用于存储值 2.定义方法用于提供功能 3.定义附属脚本用于访问值 4.定义构造器用于生成初始化值 5.通过扩展以增加默认实现的功能 6.实现协议以提供某种标准功能 但是类相比起结构体又多出一些特性, 比如: 1.继承允许一个类继承另一个类的特征 2.类型转换允许在运行时检查和解释一个类实

Swift中也有类和结构体,分别用struct和class声明,两则之间有很多相同之处,比如

1.定义属性用于存储值 2.定义方法用于提供功能 3.定义附属脚本用于访问值 4.定义构造器用于生成初始化值 5.通过扩展以增加默认实现的功能 6.实现协议以提供某种标准功能

但是类相比起结构体又多出一些特性,比如:

1.继承允许一个类继承另一个类的特征 2.类型转换允许在运行时检查和解释一个类实例的类型 3.析构器允许一个类实例释放任何其所被分配的资源 4.引用计数允许对一个类的多次引用

官方文档有推荐使用结构体的原则:

1.该数据结构的主要目的是用来封装少量相关简单数据值。 2.有理由预计该数据结构的实例在被赋值或传递时,封装的数据将会被拷贝而不是被引用。 3.该数据结构中储存的值类型属性,也应该被拷贝,而不是被引用。 4.该数据结构不需要去继承另一个既有类型的属性或者行为。

举例来说,以下情境中适合使用结构体:

1.几何形状的大小,封装一个wIDth属性和height属性,两者均为Double类型。 2.一定范围内的路径,封装一个start属性和length属性,两者均为Int类型。 3.三维坐标系内一点,封装x,y和z属性,三者均为Double类型。

这次就讲到这里,下次我们继续

总结

以上是内存溢出为你收集整理的11.Swift 中的类和结构体全部内容,希望文章能够帮你解决11.Swift 中的类和结构体所遇到的程序开发问题。

如果觉得内存溢出网站内容还不错,欢迎将内存溢出网站推荐给程序员好友。

欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/web/1080124.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2022-05-27
下一篇 2022-05-27

发表评论

登录后才能评论

评论列表(0条)

保存