web-dev-qa-db-ja.com

Java使用されるインターフェースとは何ですか?(複数選択問題)

私はいくつかのクイズを通してJavaでインターフェースを勉強している初心者であり、私はこの質問を通して来ました:

Javaインターフェースの使用目的は何ですか?

次の3つの選択肢のいずれかを選択できます。

A.さまざまなクラスのAPIを記述するために使用されます。

B.メソッドのコントラクトを指定する必要がないようにするために使用されます。

C.実際のタイプと見かけのタイプを異なるものにするために使用されます。この違いを得るには、インターフェースを使用する必要があります。

正解は選択肢Aだと思います。選択肢Bは私には意味がありません。インターフェイスは通常、メソッドとコントラクトを記述しているためです。選択肢Cも意味がありませんが、私は間違っているかもしれません。

どちらが正しい答えですか?ありがとうございました!

2
Amos Cappellaro

A.さまざまなクラスのAPIを記述するために使用されます。

正しい。

私はフレージングの正確さに苦労しています。それは間違いではありませんが、本質的に紛らわしいトートロジーです。しかし、答えを出さないために「インターフェース」と呼ばないようにする必要があり、より良い(そして同様に簡潔な)代替案を見つけるのに苦労しています。

B.メソッドのコントラクトを指定する必要がないようにするために使用されます。

全く逆である、インターフェースisコントラクト。

C.実際のタイプと見かけのタイプを異なるものにするために使用されます。この違いを得るには、インターフェースを使用する必要があります。

ステートメントの最初の部分は正しく、基本的にポリモーフィズムを説明しています。

ポリモーフィズムは継承にも適用されるため、ステートメントの2番目の部分は正しくありません。

2
Flater