/**
super 关键字
派生类中的方法实现,可以通过super关键字来引用基类的属性和方法。
super不是父类的意思,是编译器的符号,只是告诉去父类找方法或属性,略过当前类不找。
*/
class Human {
var name: String = ""
var id: Int = 0
func eat() -> Void {
print("eat")
}
func drink() -> Void {
print("drink")
}
func sleep() -> Void {
print("sleep")
}
}
// 子类 : 基类
class Woman: Human {
func birth() -> Void {
print("birth")
}
func eatandSleep() -> Void {
// 先在当前类中寻找eat,如果没有再在父类中寻找
eat()
super.sleep()
birth()
}
}
let w = Woman.init()
let h = Human.init()
w.eat()
w.sleep()
w.birth()
h.eat()
h.sleep()