国产成人毛片视频|星空传媒久草视频|欧美激情草久视频|久久久久女女|久操超碰在线播放|亚洲强奸一区二区|五月天丁香社区在线|色婷婷成人丁香网|午夜欧美6666|纯肉无码91视频

結(jié)構(gòu)體嵌套結(jié)構(gòu)體賦值 golang的嵌入為什么不算繼承?

golang的嵌入為什么不算繼承?面向?qū)ο笤O(shè)計(jì)的思想是從現(xiàn)實(shí)世界中抽象出來的一套理論。既然是對(duì)現(xiàn)實(shí)世界的抽象,繼承的本質(zhì)就是父子關(guān)系。例如,動(dòng)物是父母,貓是孩子。不能說具有父類的屬性或方法是繼承。go

golang的嵌入為什么不算繼承?

面向?qū)ο笤O(shè)計(jì)的思想是從現(xiàn)實(shí)世界中抽象出來的一套理論。既然是對(duì)現(xiàn)實(shí)世界的抽象,繼承的本質(zhì)就是父子關(guān)系。例如,動(dòng)物是父母,貓是孩子。不能說具有父類的屬性或方法是繼承。

go放棄繼承的主要原因是繼承隨著面向?qū)ο蟮陌l(fā)展而被濫用了這么多年。然而,一些繼承的特性是非常需要的,所以提供了“嵌入”以便于“模擬”繼承,但其本質(zhì)是組合,而不是繼承。

讓我給你一個(gè)例子來證明在go中嵌入是一個(gè)組合,而不是一個(gè)繼承。

但是,根據(jù)面向?qū)ο罄碚摚宇惪梢栽诟割惪梢允褂玫娜魏蔚胤绞褂?。顯然,go嵌入不滿足這個(gè)要求。吐槽:什么是頭條最好的產(chǎn)品,當(dāng)你可以抱怨技術(shù)文章的時(shí)候,代碼編輯太不舒服了。