[解決済み] Javaの@Overrideアノテーションはいつ使うのか、なぜ使うのか?
2022-03-20 04:05:21
質問
Java の
@Override
アノテーションとその理由を教えてください。
オーバーライドされたメソッドにいちいち
@Override
というアノテーションがあります。 を使用する必要があるプログラミングの状況というのはあるのでしょうか?
@Override
を使うべきでないものと
@Override
?
解決方法は?
メソッドをオーバーライドするたびに使用すると、2つの利点があります。 コンパイラのチェックを利用して、オーバーライドしていると思ったときに実際にオーバーライドしているかどうかを確認できるようにすること。 この方法では、メソッド名のスペルを間違えたり、パラメータを正しくマッチングしなかったりというよくあるミスを犯した場合、そのメソッドが実際にはオーバーライドされていないという警告が表示されることになります。 次に、メソッドが上書きされたときに、より明白になるため、コードがより理解しやすくなります。
さらに、Java 1.6では、メソッドがインターフェイスを実装しているときにマークするために使用すると、同じような利点があります。 私は、別のアノテーションを用意したほうがいいと思います(たとえば
@Implements
しかし、ないよりはましです。
関連
-
myeclipseでコンパイルするとAntエラーが発生する javaの例外が発生しました。
-
Dateが型に解決できない問題を解決する
-
[解決済み] JavaでArrayListではなくLinkedListを使用するのはいつですか?
-
[解決済み] serialVersionUIDとは何ですか、またなぜそれを使用する必要がありますか?
-
[解決済み] リフレクションとは何か、なぜ有用なのか?
-
[解決済み] なぜゲッターとセッター/アクセッサーを使うのですか?
-
[解決済み] Javaで数値を小数点以下n桁に丸める方法
-
[解決済み] Eclipseにプロジェクトをインポートした後に「Must Override a Superclass Method」エラーが発生する。
-
[解決済み】インターフェイスのメソッド実装は@Overrideすべきなのか?
-
[解決済み】なぜJavaの+=, -=, *=, /=複合代入演算子はキャスティングを必要としないのですか?
最新
-
nginxです。[emerg] 0.0.0.0:80 への bind() に失敗しました (98: アドレスは既に使用中です)
-
htmlページでギリシャ文字を使うには
-
ピュアhtml+cssでの要素読み込み効果
-
純粋なhtml + cssで五輪を実現するサンプルコード
-
ナビゲーションバー・ドロップダウンメニューのHTML+CSSサンプルコード
-
タイピング効果を実現するピュアhtml+css
-
htmlの選択ボックスのプレースホルダー作成に関する質問
-
html css3 伸縮しない 画像表示効果
-
トップナビゲーションバーメニュー作成用HTML+CSS
-
html+css 実装 サイバーパンク風ボタン
おすすめ
-
スタイルが読み込まれず、ブラウザコンソールでエラーが報告される。リソースはスタイルシートとして解釈されますが、MIMEタイプtext/htmlで転送されます。
-
Eclipseで "XXXX "の解決策を(型に)解決することができない
-
コンストラクタの呼び出しは、コンストラクタのエラー理解の最初のステートメントである必要があります。
-
this()の呼び出しはコンストラクタ本体の最初の文でなければならない 例外解決と原因分析
-
Intellij IDEAのエラー「CreateProcess error=2, system could not find specified file」に対する完璧な解決策です。
-
eclipseにプロジェクトをインポートした後、Editorにmain typeが含まれない問題
-
リソースの読み込みに失敗しました。サーバーはステータス500(内部サーバーエラー)で応答しました。
-
node js npm gruntインストール、elasticsearch-head 5.Xインストール
-
java 例外。Javaツールの初期化
-
テストが見つかりませんでした