タイトルの通りです。Javaのインターフェースと抽象インターフェースの違いは何ですか?
4 に答える
Javaには抽象インターフェースのようなものはありません(インターフェースはデフォルトで抽象であるため)、Abstractクラスがあります。
抽象クラスとインターフェースの主な違いは、抽象クラスは通常のクラスとして継承 (拡張) されるため、2 つを並行して拡張することはできませんが、同時に複数のインターフェースを実装することはできます。
Java インターフェースは定義上抽象的であるため、Java インターフェースを操作する場合、abstract キーワードは廃止されます。実装は含まれておらず、定義のみが含まれています。
インターフェイスはすでに抽象的です。OOPに関連する重要な用語「抽象」は、それ自体のインスタンスを作成できないことを意味することを覚えておいてください。それは、独自のオブジェクトを派生できる基本クラスとしてのみ使用できます。
インターフェイスは、その性質上、コード自体を定義しないという点で抽象的ですが、インターフェイスでメソッドの機能を提供するクラスによって実装する必要があります。
したがって、インターフェースの前に「抽象的」という言葉を追加しても、何も変わらないでしょう。しばらく前のJavaドキュメントでさえ、ライターはインターフェイスの文言に「抽象」を含めることでエラーを起こしました。
ただし、すべてのインターフェースは抽象的であり、違いがないことを知っておく必要があります。
抽象クラスは、少なくとも 1 つのメソッドが実装されていないクラスです。abstract
そのため、メソッドのヘッダーを記述する前にキーワード " " を使用することが必須です。
abstract
インターフェイスによって反対するのは、すべてのメソッドが抽象であるクラスです。そのため、キーワードを使用する必要はありません。