[解決済み] なぜJavaのインターフェースメソッドをabstractと宣言するのですか?
2022-05-10 11:04:41
質問
今日、Eclipse の "pull interface" リファクタリング機能を使って、既存のクラスをベースにしたインターフェイスを作成しました。ダイアログ ボックスでは、新しいインターフェイスのすべての新しいメソッドを "abstract" メソッドとして作成するよう提案されました。
その利点は何でしょうか?
インターフェースメソッドをabstractと宣言していいというのは、余計なお世話で特に推奨されていない無害な機能だと思っていたのですが、どうなんでしょうか?
なぜEclipseはそのようなスタイルをサポートするのでしょうか、あるいはなぜ誰かが自発的にそのようなスタイルを選ぶのでしょうか?
明確化します。私は、なぜインターフェイス メソッドが抽象的であるかを尋ねているのではありません。インターフェイスにある場合は、いずれにせよ抽象的であるため、なぜ明示的に抽象的であるとマークすることを選択するのかについて尋ねているのです。
どのように解決するのですか?
によると
Java言語仕様
となっており
abstract
キーワードは廃止され,もはや使用されるべきではない。(9.1.1.1項)
とはいえ、Javaの後方互換性の傾向から、私は本当に
abstract
キーワードが存在するかどうかの違いはないでしょう。
関連
-
Spring BootのテストメソッドFailed to load ApplicationContextの問題を解決する
-
[解決済み] Java で、あるコンストラクタを別のコンストラクタから呼び出すにはどうすればよいですか?
-
[解決済み] Javaで配列を宣言し、初期化する方法は?
-
[解決済み] インターフェースと抽象クラスの違いは何ですか?
-
[解決済み] 抽象メソッドと仮想メソッドの違いは何ですか?
-
[解決済み] なぜJavaにはtransientフィールドがあるのですか?
-
[解決済み] インターフェースと抽象クラス(一般的なOO)
-
[解決済み] C++でインターフェイスを宣言するには?
-
[解決済み] いつ使うか。Java 8+のインターフェイスのデフォルトメソッドと、抽象的なメソッドの比較
-
[解決済み] 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 実装 サイバーパンク風ボタン
おすすめ
-
Java エラー報告 スレッド "main" での例外 java.util.NoSuchElementException
-
エラーが報告されました。リソースの読み込みに失敗しました:サーバーは500(内部サーバーエラー)のステータスで応答しました。
-
をインスタンス化することができません。
-
this()の呼び出しはコンストラクタ本体の最初の文でなければならない 例外解決と原因分析
-
Eclipseでプロジェクトエクスプローラービューとパッケージエクスプローラービューを使う
-
node js npm gruntインストール、elasticsearch-head 5.Xインストール
-
javaコンパイル時のエラー:不正な文字 '\ufeff' に対する解決策です。
-
起動時にEclipseエラーが発生しました。起動中に内部エラーが発生しました。java.lang.NullPoin: "Javaツーリングの初期化 "中に内部エラーが発生しました。
-
コミットには何も追加されないが、未追跡のファイルが存在し、gitで未追跡のファイルに対する完璧な解決策
-
[解決済み] 抽象的なクラスをインスタンス化することはできますか?