Swift 中的类型选择与应用
1. 类与结构体基础
在 Swift 里,类的实例通常被叫做对象。不过,Swift 中的结构体和类有很多相似的功能,所以在提及这两种类型的实例时,我们统一用“实例”这个术语。
类是面向对象编程的核心,创建类的实例时会为其命名,所以类属于命名类型,同时它也是引用类型。
结构体在 Swift 语言中至关重要。苹果建议 Swift 开发者优先使用值类型而非引用类型,从 Swift 标准库(http://swiftdoc.org)可以看出,大部分类型都是用结构体实现的。这是因为在 Swift 中,结构体和类有很多相似功能,但也存在一些根本差异。
结构体能够将实例的属性、方法和初始化器封装成单一类型,还可以包含下标等其他元素,这里主要关注构成结构体的基本元素。
下面是创建结构体的示例:
struct MyStruct {
var oneProperty: String
func oneFunction() {
}
}
与类相比,结构体有一些基本差异。在结构体中,若未提供初始化器,它会自动创建默认初始化器,创建结构体实例时,需为所有非可选属性提供初始值。
另外,结构体中的部分方法会使用 mutating 关键字。结构体是值类型,默认情况下,实例方法不能修改结构体的属性。使用 mutating 关键字,可让特定方法具备修改属性的能力,任何修改结构体属性值的方法都必须使用该关键字。
超级会员免费看
订阅专栏 解锁全文
1211

被折叠的 条评论
为什么被折叠?



