加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 百科 > 正文

11.Swift 中的类和结构体

发布时间:2020-12-14 07:19:08 所属栏目:百科 来源:网络整理
导读:Swift中也有类和结构体,分别用struct和class声明,两则之间有很多相同之处,比如 1.定义属性用于存储值 2.定义方法用于提供功能 3.定义附属脚本用于访问值 4.定义构造器用于生成初始化值 5.通过扩展以增加默认实现的功能 6.实现协议以提供某种标准功能 但是类

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类型。

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

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读