為什麼 Go 缺乏型別繼承?
型別繼承是物件導向程式設計中的一個基本概念,允許子類別繼承泛型的定義類別。然而,Go 作為一種流行的現代程式語言,明顯缺乏這個功能。
Go 選擇的理由
Go 中省略類型繼承的決定是經過深思熟慮的它的創造者。在他們的常見問題(FAQ) 中,他們提供了富有洞察力的解釋:
「物件導向編程,至少在最著名的語言中,涉及太多類型之間關係的討論,這些關係通常可能會導致Go 採用了不同的方法。式聲明類型關係。它會自動認為類型符合指定其部分方法的任何介面。
這種方法提供了幾個優點:
減少簿記:
消除了需要用於手動類型聲明和維護。組合優於繼承
作為繼承的替代方案,Go 遵循「組合優於繼承」原則。這透過將物件組合成組合而不是擴展基類來提高程式碼的可重複使用性和靈活性。
以上是為什麼 Go 選擇省略型別繼承?的詳細內容。更多資訊請關注PHP中文網其他相關文章!