エントリーの編集
エントリーの編集は全ユーザーに共通の機能です。
必ずガイドラインを一読の上ご利用ください。
記事へのコメント0件
- 注目コメント
- 新着コメント
このエントリーにコメントしてみましょう。
注目コメント算出アルゴリズムの一部にLINEヤフー株式会社の「建設的コメント順位付けモデルAPI」を使用しています
- バナー広告なし
- ミュート機能あり
- ダークモード搭載
関連記事
[Go]埋め込み - Qiita
概要 とあるPRで、構造体をインターフェース化するように言われたけど、愚直に実装しようとすると処理が... 概要 とあるPRで、構造体をインターフェース化するように言われたけど、愚直に実装しようとすると処理が共通なところ多いなぁ・・・なんとかできないかなぁ・・・と調べているとで、Goだと埋め込み(embed)がこの事態の解決にもっともふさわしそうということで、マジメにまとめてみた。 埋め込み Goで「委譲」を実現する機能。 サンプルコード(The Go Playground) アクセスレベルについてもっと調べてみたサンプルコード 話それますが、Go PlayGroundって、別パッケージにすることもできるんですね・・・ 継承と委譲 継承は「is-a」、委譲は「has-a」の関係。 継承の目的は既存のコードを拡張して新しいクラスを作ること、委譲の目的はその名の通り、一部の機能の処理をおまかせすること。 Goのembedは「委譲」にあたり「継承」はできないので、概念的に「A is B」な構造体間の関