11.2 Swift中super关键字

/**

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()

// 告诉当前类去 当前类的父类中寻找方法 sleep

super.sleep()

birth()

}

}

let w = Woman.init()

let h = Human.init()

w.eat()

w.sleep()

w.birth()

h.eat()

h.sleep()

相关文章

软件简介:蓝湖辅助工具,减少移动端开发中控件属性的复制和粘...
现实生活中,我们听到的声音都是时间连续的,我们称为这种信...
前言最近在B站上看到一个漂亮的仙女姐姐跳舞视频,循环看了亿...
【Android App】实战项目之仿抖音的短视频分享App(附源码和...
前言这一篇博客应该是我花时间最多的一次了,从2022年1月底至...
因为我既对接过session、cookie,也对接过JWT,今年因为工作...