\r\n\r\n

抽象クラスとインターフェイスの違い

抽象クラスとインターフェイスの主な違いは、javaのインターフェイスの処理は本質的に抽象的であり、アプリケーションを持つことができない点である。大雑把に言うと、インターフェースは実はコントラクトで、インターフェースというと本体のないメソッドに適用される、ただのパターンです。抽象クラスは、基本的に使用料が高いクラスです。抽象クラスとインターフェースは全く別の概念で、別物なのですが、その実装が非常に似ていることがあります...。

主な相違点

抽象クラスとインターフェースの大きな違いは、Javaのインターフェースの処理は基本的に抽象的であり、アプリケーションを持つことができない点である。大雑把に言うと、インターフェースは実はコントラクトで、インターフェースというと本体のないメソッドに適用される、ただのパターンです。抽象クラスは、基本的に使用料が高いクラスです。抽象クラスとインターフェースは全く別の概念で、2つの異なるものですが、時にはその実装が非常に似ていることがあります。

抽象クラスは何ですか?

抽象クラスはプログラマにとって完全に暗黙の了解になっているわけではありません。抽象クラスは、1つまたは複数の抽象メソッドを持つことができます。クラスのグルーピングやランキングをモデリングするのに便利で、この処理を行うと、プログラマは要件を見て何を作ればいいのかがわかるようになる。抽象クラスは、いくつかの部分が欠けているため、完全に依存することはできません。この議論の背景には、抽象クラスはメソッドのタイトルはあるがボディがないにもかかわらず、厳密にはオブジェクト指向であるという主旨がある。抽象クラスというと、どちらも他のクラスを取得したり継承したりする傾向があるため、両者の間には強い結びつきがあります。

インターフェースは何ですか?

逆に言えば、インターフェースについて語るとき、インターフェースそのものとそれを表すクラスとの関係やコミュニケーションは、抽象クラスほど強くない。 Javaクラスは多くのインターフェースを実装できるが、一つの抽象クラスを継承することができる。つまり、多くのインタラクションを一度にインプリメントしたいときには、このインターフェイスの出番というわけですね。それ以上は、たとえ現時点ではAPIを変えたくないとしても、インターフェイスが最善の策です。インターフェースは、実際には2つの異なるオブジェクトの間の契約です。要するに、機能を軸にしたインターフェースなのです。

主な相違点

  1. 抽象クラスはオブジェクト指向であり、インターフェースは機能指向である。
  2. APIを一定期間変更しないようにしたい場合は、抽象クラスではなくインターフェイスを選択します。
  3. 抽象クラスでは、多重継承はできない。
  4. 将来的にメソッドを追加する必要がある場合は、インターフェースよりも抽象クラスを選択します。
  5. 抽象クラスは共通のベースクラスアプリケーションを提供しますが、インターフェースではこのようなことは起こりません。
  6. インターフェースでは、実装するメソッドはすべてpublicですが、抽象クラスでは、publicでないメソッドもいくつか適用することができます。
  7. コンストラクタはインターフェースにはありませんが、抽象クラスには登場します。
  8. 抽象クラスのフルメンバーは静的であってもよいが、インターフェースはそうではない。

コントラストビデオ

  • 2020-06-25 18:47 に公開
  • 閲覧 ( 19 )
  • 分類:教育

あなたが興味を持っているかもしれない記事

匿名者
匿名者

0 件の投稿

作家リスト

  1. admin 0 投稿
  2. 匿名者 0 投稿

おすすめ