定義兩個父類介面
//定義動物介面:所有動物都會新陳代謝,都會掛掉
type animal inte***ce
//定義戰士介面,會進攻和防守
type fighter inte***ce
顯式地繼承父類介面
//野獸介面,擁有動物的一切特徵
//野獸介面,擁有戰士的一切特徵
type beast inte***ce
隱式繼承父類介面
type beast inte***ce
實現beast介面
type tiger struct
/*實現野獸的全部方法才算是野獸*/
func (t *tiger)eat(food string) (**** string)
func (t *tiger)die()
func (t *tiger)attack() (bloodloss int)
func (t *tiger)defend()
func (t *tiger)run()
使用介面例項
func main()
var animal animal
var fighter fighter
var beast beast
//老虎既是動物,又是鬥士,又是野獸
//用子類實現去給父類介面賦值
animal = tiger
fighter = tiger
beast = tiger
//呼叫父類介面方法
animal.eat("食物")
animal.die()
fighter.attack()
fighter.defend()
beast.run()
}
物件導向系列(四) 介面的特點
介面是一種規範。也是一種能力。只要乙個類繼承了乙個介面,這個類就必須實現這個介面中所有的成員 介面的功能要單一 為了多型。介面不能被例項化。也就是說,介面不能new 不能建立物件 跟抽象類是一樣的,因為建立物件也沒意義。介面中的成員不能加 訪問修飾符 介面中的成員訪問修飾符為public,不能修改。...
物件導向 8 介面與介面的實現
二 介面的作用?三 介面的相關語法 四 介面的向上造型 總結 1 介面的語法 2 什麼情況下用介面?3 介面的好處 本篇文章主要講解介面的語法,什麼情況下用介面?讀者如果發現有什麼理解錯的地方指正一下,我會第一時間來改正並重新學習,謝謝大家 1 是一種資料型別 引用資料型別 2 由inte ce定義...
物件導向16 介面的定義與實現
package com.oop.demo09 inte ce 定義的關鍵字 介面都需要有實現類 public inte ce userservice package com.oop.demo09 public inte ce timeservice package com.oop.demo09 抽象...