首先要说的是 Swift 中 使用三种方法来实现静态属性:
1.结构体静态属性
2.枚举静态属性
3.类静态属性
这三种方法的定义如下所示:
//第一种:结构体方式
struct 结构体名 {
static var(或let) 存储属性 = "hello world"
static var 计算属性名 : 数据类型 {
get {
return 计算后属性值
}
set (新属性值) {
}
}
}
//第二种:枚举方式
enum 枚举名 {
static var(或let) 存储属性 = "hello world"
static var 计算属性名 : 数据类型 {
get {
return 计算后属性值
}
set (新属性值) {
}
}
}
//第三种:类方式
class 类名 {
class var 计算属性名 : 数据类型 {
get {
return 计算后属性值
}
set (新属性值) {
}
}
}
面向对象类型 实例存储属性 静态存储属性 实例计算属性 静态计算属性
类 支持 不支持 支持 支持
结构体 支持 支持 支持 支持
枚举 不支持 支持 支持 支持
提示:在静态计算属性中不能访问实例属性(包括存储属性和计算属性),但可以访问其他静态属性。在实例计算属性中能访问实例属性,也能访问静态属性。我们可以使用这些方式来达到全局常量的方式:
比如我们使用类方式来存放全局常量
class Contants{
class var BASE_URL : String{ return "http://www.baidu.com" }
}
//然后我们就可以使用Contants.BASE_URL这种方式来获取这个全局常量了。