輸入屬性
型別屬性是型別本身的屬性,而不是例項上的屬性。它們既可以是儲存也可以是計算屬性。使用 static
宣告一個 type 屬性:
struct Dog {
static var noise = "Bark!"
}
print(Dog.noise) // Prints "Bark!"
在類中,你可以使用 class
關鍵字而不是 static
來使其可覆蓋。但是,你只能將其應用於計算屬性:
class Animal {
class var noise: String {
return "Animal noise!"
}
}
class Pig: Animal {
override class var noise: String {
return "Oink oink!"
}
}
這通常與單例模式一起使用 。