ホームページ > バックエンド開発 > Golang > go cmdline または IDE (IntelliJ) を通じて、構造体が実装しているインターフェイスを確認する方法はありますか?

go cmdline または IDE (IntelliJ) を通じて、構造体が実装しているインターフェイスを確認する方法はありますか?

PHPz
リリース: 2024-02-09 09:30:38
転載
490 人が閲覧しました

有没有办法通过 go cmdline 或 IDE (IntelliJ) 找出我的结构实现了哪些接口?

php エディタ Xiaoxin があなたの質問に答えます。構造体がどのインターフェイスを実装しているかを知りたい場合は、いくつかの方法があります。まず、go cmdline コマンド ライン ツールを使用してそれを見つけます。コマンドラインに「go doc -all」と入力して Enter を押すと、構造に実装されているすべてのインターフェイスが表示されます。さらに、IntelliJ IDE を使用している場合は、IntelliJ IDE が提供するコード ナビゲーション機能を使用して、構造が実装しているインターフェイスを見つけることができます。コード内で構造体定義を見つけて、Ctrl キーを押しながら構造体名をクリックすると、すべてのインターフェイス実装が表示されます。これらの方法がお役に立てば幸いです。

質問内容

あると答えてください

リーリー

コード内の他の場所に person がある場合、その person がどのインターフェイスを実装するかを知る方法はありますか?明らかに、Person は Speaker を実装していますが、別のタイプの場合はどうなるでしょうか?

リーリー

別のパッケージに存在しますか?

コンテキストとして、コードベースを調べていますが、レシーバー メソッドを削除できるかどうか判断するのに苦労しています。そのメソッドがインターフェイス要件を満たすために存在するのか、それとも単に機能を強化するために存在するのかを判断するのが難しいためです。スタンドアロンのコードベースでは、それを削除してコンパイラ エラーが発生するかどうかを確認できますが、パブリック ライブラリでは同じことはできません。

回避策

Goland ドキュメントから、インターフェイスを実装またはオーバーライドしているガター アイコンを使用して単一の実装に移動することも、Cmd U を使用してすべての実装を見つけることもできます (作業していると仮定します)。 Mac の場合)。ドキュメントへのリンクは次のとおりです:

https://www.jetbrains .com/help/go/navigating-through-the-source-code.html#go_to_implementation

Goland は IntelliJ をベースにした Go IDE なので、同じことができるはずです。ガター アイコンを構成する必要がある場合がありますが、同じコマンドが IntelliJ で機能するはずです。

以上がgo cmdline または IDE (IntelliJ) を通じて、構造体が実装しているインターフェイスを確認する方法はありますか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

ソース:stackoverflow.com
このウェブサイトの声明
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。
人気のチュートリアル
詳細>
最新のダウンロード
詳細>
ウェブエフェクト
公式サイト
サイト素材
フロントエンドテンプレート