国产探花免费观看_亚洲丰满少妇自慰呻吟_97日韩有码在线_资源在线日韩欧美_一区二区精品毛片,辰东完美世界有声小说,欢乐颂第一季,yy玄幻小说排行榜完本

首頁(yè) > 編程 > Golang > 正文

Go語(yǔ)言使用組合的方式實(shí)現(xiàn)多繼承的方法

2020-04-01 19:22:01
字體:
來(lái)源:轉(zhuǎn)載
供稿:網(wǎng)友
這篇文章主要介紹了Go語(yǔ)言使用組合的方式實(shí)現(xiàn)多繼承的方法,實(shí)例分析了多繼承的原理與使用組合方式來(lái)實(shí)現(xiàn)多繼承的技巧,需要的朋友可以參考下
 

本文實(shí)例講述了Go語(yǔ)言使用組合的方式實(shí)現(xiàn)多繼承的方法。分享給大家供大家參考。具體實(shí)現(xiàn)方法如下:

在大多數(shù)面向?qū)ο蟮木幊陶Z(yǔ)言中多繼承都是不支持的。因?yàn)樵诨赾lass的體系中,多繼承極大地增加了編譯器的復(fù)雜性。
Go語(yǔ)言使用組合的方式實(shí)現(xiàn)繼承,因此也可以很簡(jiǎn)單的實(shí)現(xiàn)多繼承。

 

復(fù)制代碼代碼如下:
//使用組合的方式實(shí)現(xiàn)多繼承  
type Phone struct{}  
  
func (p *Phone) Call() string {  
    return "Ring Ring"  
}  
  
type Camera struct{}  
  
func (c *Camera) TakeAPicture() string {  
    return "Click"  
}  
  
//多繼承  
type CameraPhone struct {  
    Camera  
    Phone  
}  
  
func structTest0803() {  
    cp := new(CameraPhone)  
    fmt.Println("Our new CameraPhone exhibits multiple behaviors ...")  
    fmt.Println("It exhibits behavior of a Camera: ", cp.TakeAPicture())  
    fmt.Println("It works like a Phone too: ", cp.Call())  
  
    /*Output:  
    Our new CameraPhone exhibits multiple behaviors ...  
    It exhibits behavior of a Camera:  Click  
    It works like a Phone too:  Ring Ring  
    */  
}

 

希望本文所述對(duì)大家的Go語(yǔ)言程序設(shè)計(jì)有所幫助。


發(fā)表評(píng)論 共有條評(píng)論
用戶名: 密碼:
驗(yàn)證碼: 匿名發(fā)表
主站蜘蛛池模板: 罗江县| 游戏| 齐齐哈尔市| 嘉兴市| 太白县| 布拖县| 福泉市| 东乌珠穆沁旗| 泰宁县| 卢氏县| 赤峰市| 曲阳县| 普格县| 孝感市| 定安县| 黑山县| 松阳县| 江油市| 西平县| 仁布县| 津市市| 荣成市| 三明市| 望都县| 浠水县| 蓝田县| 共和县| 许昌县| 鄂尔多斯市| 齐河县| 常山县| 华容县| 德保县| 台北县| 双辽市| 辽中县| 南华县| 瓮安县| 石景山区| 托克托县| 景宁|