記事の内容
この記事では、Go言語のインターフェース、タイプアサーション、Stringerの使い方を説明します。
インターフェース
インターフェースを使うことで、structに使用するメソッドを強制することができます。
下記のコードでは、Human型を指定することで、PersonにchangeNameとsayNameの両方を強制的に実装させています。
もし、PersonがchangeNameやsayNameを実装しないで動かそうとすると、その時点でエラーが出ます。
このように、インターフェースを使うことで、エラーを早期に発見することができます。
タイプアサーション
Go言語では、インターフェースをint型やstring型などに変換することができます。
これは、タイプアサーションと呼ばれています。
一方で、通常のキャストはタイプコンバージョンと呼ばれているので、合わせて覚えておきましょう。
Stringer
Stringerを使うことで、fmt.Printlnの表示を変更することができます。
まとめ
この記事では、Go言語のインターフェースについて説明しました。
Good luck for your engineer life!