我是Swift的新手,正在尝试学习子类的概念。 Swift编程语言2.1指出:
子类“定义一个新的存储属性hasBasket,默认值为false(推断属性的Bool类型)。”
我搜索了谷歌,但无法找到一个令人满意的答案,什么是hasBasket()方法,它的功能是什么?有人可以帮帮我吗?在此先感谢您的帮助!
答案 0 :(得分:6)
hasBasket
只是向您解释这个概念的一个例子。
class Bicycle: Vehicle {
var hasBasket = false
}
您定义的类型Bicycle
扩展了Vehicle
并对其进行了专门化(因此它仍然是Vehicle
但具有添加的行为)。 hasBasket
属性确实是一个专业化的例子,因为自行车可以有一个篮子然后你将该属性添加到Bicycle
类。
这是合法的:
let bicycle = Bicycle()
bicycle.hasBasket = true
如果您定义一个从Bicycle
派生为
class Tandem: Bicycle {
var currentNumberOfPassengers = 0
}
那么这也是合法的:
let tandem = Tandem()
tandem.hasBasket = true
因为子类化使子类继承其父类的所有行为。