Javaの抽象クラスと最終クラスの違いは何ですか

目次:

Anonim

NS 主な違い Javaの抽象クラスと最終クラスの間は 抽象クラスは、抽象メソッドと非抽象メソッドを備えたクラスであり、抽象化を実行できます。一方、最終クラスは、他のクラスがそのデータとメソッドにアクセスするのを制限するクラスです。

オブジェクト指向プログラミングは、多くのソフトウェアプロジェクトで広く使用されています。オブジェクトのセットを使用してプログラムを開発するのに役立ち、これらのオブジェクトはメッセージを渡すことによって他のオブジェクトと相互作用します。さらに、オブジェクトを作成するにはクラスが不可欠です。オブジェクトを作成するための青写真です。さらに、OOPにはさまざまなプログラミングの概念があります。そのうちの2つは、抽象クラスと最終クラスです。

対象地域

1.Javaの抽象クラスとは何ですか -定義、機能性 2.Javaの最後のクラスは何ですか -定義、機能性 3.Javaの抽象クラスと最終クラスの違い -主な違いの比較

重要な用語

クラス、抽象クラス、最終クラス、Java、オブジェクト、OOP

Javaの抽象クラスとは

抽象化はOOPの主要なパラダイムです。これは、内部の詳細を非表示にし、機能のみをユーザーに表示する方法です。また、プログラムの複雑さを軽減するのにも役立ちます。抽象化を実現する1つの方法は、抽象クラスを使用することです。

abstractキーワードで宣言されたクラスは、抽象クラスです。これは、抽象メソッドと非抽象メソッドで構成できます。クラスは、抽象クラスを拡張し、抽象クラスの抽象メソッドの実装を提供できます。抽象クラスを使用してオブジェクトを作成することはできませんが、抽象クラスを拡張するクラスからオブジェクトを作成することはできます。例は次のとおりです。

図1:計算Javaクラス

図02:メインメソッドを持つJavaクラス

計算クラスには、sumとsubという2つの抽象メソッドがあります。 Testクラスは、Calculationクラスを拡張します。したがって、このクラスは、sumメソッドとsubメソッドの両方の実装を提供します。メインプログラムには、Testタイプのオブジェクトがあり、sumメソッドとsubメソッドが呼び出されます。最後に、合計値と減算値がコンソールに表示されます。この例では、抽象クラスには抽象メソッドしか含まれていませんが、そのクラスに非抽象メソッドを含めることもできます。

Javaの最終クラスとは

「final」キーワードで宣言されたクラスはfinalクラスです。これは、ユーザーによるクラスへのアクセスを制限する方法です。つまり、finalクラスを拡張することはできません。したがって、他のクラスは、最終クラスのプロパティとメソッドにアクセスしたり、最終クラスを使用してオブジェクトを作成したりすることはできません。

図3:車両クラス

図4:車のクラス

車両は最終クラスです。メソッドが実行されます。 CarクラスはVehicleクラスを拡張しますが、Vehicleクラスが最終であるためエラーが発生します。メインプログラムでは、cはCarのオブジェクトであり、そのオブジェクトはrunメソッドを呼び出します。 Vehicleは最終的な方法であるため、その方法にアクセスすることはできません。したがって、プログラムを実行することはできません。

Javaの抽象クラスと最終クラスの違い

意味

抽象クラスは、抽象メソッドと非抽象メソッドのコレクションであるabstractキーワードで宣言されたクラスです。ただし、finalクラスは、finalキーワードで宣言されたクラスであり、他のクラスがそれにアクセスすることを制限します。したがって、これがJavaの抽象クラスと最終クラスの主な違いです。

キーワード

使用法

抽象クラスは抽象化を実現するのに役立ち、最終クラスは他のクラスがそのプロパティやメソッドにアクセスするのを制限するのに役立ちます。したがって、これはJavaの抽象クラスと最終クラスの機能の違いです。

結論

簡単に言うと、抽象クラスと最終クラスはJavaの2つの概念です。 Javaの抽象クラスと最終クラスの主な違いは、抽象クラスは抽象メソッドと非抽象メソッドを持つクラスであり、抽象化を実行できるのに対し、最終クラスは他のクラスがそのデータとメソッドにアクセスするのを制限するクラスであるということです。

参照:

1.「Javaの抽象クラス–Javatpoint」 Www.javatpoint.com、ここから入手できます。 2.「Javaの最終キーワード–Javatpoint」。 Www.javatpoint.com、ここから入手できます。

Javaの抽象クラスと最終クラスの違いは何ですか