クラスとインターフェイスの両方が、オブジェクトの外観とオブジェクトの動作を定義します。両方の構造を徹底的に研究して理解すれば、プログラミングを扱いやすくなります。これらは、オブジェクト指向プログラミング言語の2つの基本構造です。また、理解を深めることで、コーディングの品質と開発者のエクスペリエンスが向上します。
クラスとインターフェース
クラスとインターフェイスの主な違いは、クラスには抽象メソッドと具象メソッドの両方を含めることができることです。一方、インターフェイスには抽象メソッドのみを含めることができます。クラスは部分的な抽象化に達する可能性がありますが、インターフェースは常に完全な抽象化を実現します。
クラスは、オブジェクトの作成元となるプログラムの基本構造です。クラス自体は、一緒にパックされたバンドルの同一のグループを含む特定のパッケージに属しています。クラスの宣言には、通常、キーワード、修飾子、およびクラス名が含まれます。クラスは、さらに2つのカテゴリに分類できます。ビルトインクラスii。ユーザー定義クラス
インターフェイスのアイデアは、一度に複数のクラスを実装するために導入されました。プログラムのメソッド宣言が含まれています。抽象メソッドだけでなく、インターフェイスには静的メソッドを含めることもできます。デフォルトでは、常にパブリックとして宣言されます。
クラスとインターフェイスの比較表
比較のパラメータ | クラス | インターフェース |
意味 | クラスは基本的にオブジェクトの動作を記述および定義します | インターフェイスには基本的に、クラスによって定義された属性と動作が含まれています |
キーワード | キーワード「クラス」は、クラスを宣言するために使用されます | キーワード「interface」は、インターフェイスを宣言するために使用されます |
メソッド | クラスは、抽象メソッドと具象メソッドの両方を持つことができます。これは、メソッドが本体を持つことができることを意味します | インターフェイスは抽象メソッドのみを持つことができます。これは、メソッドが本体を持つことができないことを意味します |
アクセス指定子 | クラスのメンバーは、パブリック、保護、またはデフォルトのいずれかになります | インターフェイスのすべてのメンバーは、デフォルトでパブリックです |
継承 | クラスは多重継承をサポートしていません。キーワードextendsを使用して別のクラスを継承します | インターフェイスは多重継承をサポートします。ただし、インターフェースのみを継承できます |
クラスとは何ですか?
クラスは、オブジェクトが作成される青写真または計画です。これは、同様のプロパティを持つオブジェクトのグループです。これは論理エンティティであり、物理的であってはなりません。クラス名は通常、大文字で始まります。
これがオブジェクト指向プログラミングの基本概念です。オブジェクトの動作を決定します。メソッドはいくつでも持つことができ、その値にアクセスできます。
クラスには、次のタイプの変数を含めることができます。ローカル変数、インスタンス変数、およびクラス変数。
クラスの構文は次のとおりです。
クラス{フィールド;メソッド;}
クラスの下にオブジェクトを作成するには、コンストラクターとともに「new」と呼ばれるキーワードを使用する必要があります。コンストラクターの名前はクラスの名前と同じです。その機能はメソッドの機能に似ています。
たとえば、クラス名がProgramの場合、コンストラクターはProgram()です。クラスのメンバーにアクセスするには、クラスとともにオブジェクトの名前を使用する必要があります。
インターフェイスとは何ですか?
インターフェイスは、同様のメソッドのグループとして定義されていますが、本体は空です。
インターフェイスを実装すると、クラスがより適切になります。これにより、クラスの動作がより正式になります。これは、クラスを外部に接続するコンパイラによって適用されるコントラクトです。
クラスが正常にコンパイルされる前に、インターフェイスによって定義されたメソッドがソースコードに含まれている必要があります。クラスをコンパイルするには、最初にpublicキーワードを追加する必要があります。プライベート変数とメソッドはあり得ません。
これは、抽象メソッドと静的定数で構成されています。インターフェイスにメソッド本体を含めることはできません。これは通常、プログラムで多重継承を実現するために使用されます。
デフォルトおよび静的メソッドをインターフェイスに導入できます。また、インターフェイスにプライベートメソッドを含めることもできます。抽象化を実現するために使用されます。
クラスとインターフェイスの主な違い
結論
プログラムを組み立てるには、クラスとインターフェイスが2つの最も基本的な要素です。それらには、提供する独自の機能があります。ただし、構文的に比較すると、かなりの類似点があります。キーワード「class」はクラスの作成に使用され、キーワード「interface」はインターフェースの作成に使用されます。必要なプログラムを実行するには、適切な形式を覚えておく必要があります。
クラスはメソッド本体を持つことができますが、インターフェイスは持つことができません。メソッドに関して言えば、クラスには、パブリックまたはプライベートの静的メソッドと最終メソッドの両方が含まれています。インターフェイスの場合、常にパブリックである2つのメソッドのいずれかを持つことはできません。これは基本的に、実装されるクラスへのアクセシビリティを提供するためです。
もう1つの重要な点は、クラスの実装には、インターフェースに存在するすべてのメソッドの検証も必要であるということです。したがって、間違いなく、クラスとインターフェイスは相互にのみ依存しています。