位置:首頁 > 高級語言 > Swift教學 > Swift定義一個基類

Swift定義一個基類

定義一個基類(Base class)

不繼承於其它類的類,稱之為基類(base calss)


注意:
Swift 中的類並不是從一個通用的基類繼承而來。如果你不為你定義的類指定一個超類的話,這個類就自動成為基類。
 

下麵的例子定義了一個叫Vehicle的基類。這個基類聲明了兩個對所有車輛都通用的屬性(numberOfWheelsmaxPassengers)。這些屬性在description方法中使用,這個方法返回一個String類型的,對車輛特征的描述:

class Vehicle {
    var numberOfWheels: Int
    var maxPassengers: Int
    func description() -> String {
        return "\(numberOfWheels) wheels; up to \(maxPassengers) passengers"
    }
    init() {
        numberOfWheels = 0
        maxPassengers = 1
    }
}

Vehicle類定義了構造器(initializer)來設置屬性的值。構造器會在構造過程一節中詳細介紹,這裡我們做一下簡單介紹,以便於講解子類中繼承來的屬性如何被修改。

構造器用於創建某個類型的一個新實例。儘管構造器並不是方法,但在語法上,兩者很相似。構造器的工作是準備新實例以供使用,並確保實例中的所有屬性都擁有有效的初始化值。

構造器的最簡單形式就像一個冇有參數的實例方法,使用init關鍵字:

init() {
    // 執行構造過程
}

如果要創建一個Vehicle類的新實例,使用構造器語法調用上麵的初始化器,即類名後麵跟一個空的小括號:

let someVehicle = Vehicle()

這個Vehicle類的構造器為任意的一輛車設置一些初始化屬性值(numberOfWheels = 0maxPassengers = 1)。

Vehicle類定義了車輛的共同特性,但這個類本身並冇太大用處。為了使它更為實用,你需要進一步細化它來描述更具體的車輛。