Swift中类和对象的属性分为三种:储存属性,计算属性和类属性。
import Foundation
class Person {
// 储存属性必须赋初值
var score1: Int = 20
var score2: Int = 50
// 延迟储存属性,需要时再去分配
lazy var dog: Dog = Dog()
// 计算属性,不能赋初值,提供get和set方法,
var sum: Int {
get {
return score1 + score2
}
}
// 类属性,只能是计算属性,使用类而非对象去调用
// 如 Person.desc
class var desc: String {
get {
return "This is one person."
}
}
// 构造方法
init() {
println("This is one person.")
}
}
class Dog {
init() {
println("This is one dog.")
}
}
var p = Person()
println(Person.desc)
println(p.score1)
println(p.score2)
println(p.sum)
println(p.dog)