抽象クラスと具象クラスの違いは何ですか

目次:

Anonim

NS 主な違い 抽象クラスと具象クラスの間は 具象クラスを使用している間は抽象クラスを使用してオブジェクトを作成することはできません。オブジェクトを作成することは可能です。

オブジェクト指向プログラミング(OOP)は、ソフトウェア開発で人気のあるパラダイムです。現実世界のシナリオを簡単に開発するのに役立ちます。さらに、プログラマーは一連のオブジェクトを使用してソフトウェアをモデル化することもできます。これらのオブジェクトは他のオブジェクトと通信してメッセージを渡します。さらに、オブジェクトはクラスを使用して作成されます。具象クラスはデフォルトのクラスです。 OOPの主要な柱の1つは、抽象化です。抽象クラスは、抽象化を実現する方法です。

抽象化、抽象クラス、クラス、具象クラス、OOP

抽象クラスとは

OOPの主要な概念の1つは、抽象化です。これは、内部の詳細を非表示にし、機能のみをユーザーに表示するプロセスです。抽象クラスは、抽象化を実現するためのメソッドです。 Javaなどのプログラミング言語は、抽象キーワードを使用して抽象クラスを示します。

抽象メソッドは、実装のないメソッドです。さらに、抽象クラスは抽象メソッドと非抽象メソッドを持つことができます。クラスは抽象クラスを拡張できます。次に、抽象クラスの抽象メソッドの実装を提供できます。さらに、抽象クラスはコンストラクターと静的メソッドを持つことができます。

抽象クラスからオブジェクトを作成することはできません。ただし、プログラマーは、抽象クラスを拡張するクラスからオブジェクトを作成できます。抽象クラスの抽象メソッドがfinalとして宣言されている場合、抽象クラスを拡張するクラスは、抽象メソッドの実装を提供できません。

図1:形状クラス

図2:スクエアクラス

Shapeは抽象クラスです。これには、drawと呼ばれる抽象メソッドとdisplayと呼ばれる非抽象メソッドがあります。さらに、SquareクラスはShapeを拡張します。したがって、Squareクラスは、Shapeクラスの抽象メソッド(draw)から実装を提供できます。

図3:メインクラス

Squareのオブジェクトはmainメソッド内に作成されます。最後に、そのオブジェクトを使用してdrawメソッドが呼び出されます。コンソールに「Square」と表示されます。

具象クラスとは

具象クラスは、実装されていないメソッドがないクラスです。 Javaなどのプログラミング言語は、classキーワードを使用してクラスを示します。具象クラスは、オブジェクトを作成するための青写真です。属性とメソッドがあります。属性はプロパティまたはデータを表し、メソッドはクラスの動作を表します。これらの属性とメソッドはクラスのメンバーです。

図4:具象クラス

上記はRectangleと呼ばれる具象クラスです。ここでは、長さと幅の2つのプライベート属性があります。また、属性に初期値を提供するためのRectangleというコンストラクターもあります。さらに、displayAreaと呼ばれるメソッドがあります。

抽象クラスと具象クラスの違い

意味

抽象クラスは、抽象メソッドと非抽象メソッドのコレクションである抽象キーワードで宣言されたクラスですが、具象クラスは、新しいキーワードを使用してインスタンスまたはオブジェクトを作成できるクラスです。したがって、これが抽象クラスと具象クラスの主な違いです。

オブジェクトの作成

プログラマーは抽象クラスを使用してオブジェクトを作成できませんが、プログラマーは具象クラスを使用してオブジェクトを作成できます。

メソッド

抽象クラスには実装されていないメソッドがありますが、具象クラスのすべてのメソッドは実装されています。

結論

簡単に言うと、OOPはソフトウェア開発の主要なパラダイムであり、抽象クラスと具象クラスはOOPに関連する2つの概念です。抽象クラスと具象クラスの主な違いは、抽象クラスを使用してオブジェクトを作成することはできませんが、具象クラスを使用してオブジェクトを作成することは可能であるということです。

参照:

1.「Javaのオブジェクト| Javaのクラス–Javatpoint。」 Www.javatpoint.com、ここから入手できます。 2.「Javaの抽象クラス–Javatpoint」。 Www.javatpoint.com、ここから入手できます。

抽象クラスと具象クラスの違いは何ですか