-4

インターフェイスのリアルタイムアプリケーションとは???

インターフェイスも定義せずに実装されたクラスを作成できます。

たとえば。

インターフェイス動物が 1 匹いて、食べるなどの方法があります。

そこから犬、猫などのさまざまなクラスを実装できます。

しかし、インターフェイスを使用せずに、同じメソッドを使用して同じ犬、猫などのクラスを作成することもできます。

では、なぜインターフェイスを使用するのですか???

4

1 に答える 1

2

コードの大部分から実装を切り離すことができるからです。

古典的な例は、たとえばコレクションListとそのサブクラスです。次のようなリストを定義できます。

private List<String> list = new ArrayList<>();

...そして、そのコードで 1 回、具象クラス ArrayList だけに言及します。残りの時間listは、Listインターフェイスである の型で作業しています。何らかの理由で list の別の実装を選択したい場合LinkedList、または自分のユースケースでうまく機能することがたまたま見つかったサードパーティの実装でさえ、1 つを別の実装に交換するだけの簡単なケースになります。 . 一方ArrayList、コードのあらゆる場所で使用し、それらすべての型を変更する必要がある場合は、(潜在的に) ArrayListList インターフェイスにない特定のメソッドを使用することになります。つまり、自分のやり方をリファクタリングする必要があります。そのあたりも。

于 2013-05-24T11:38:20.187 に答える