例を含むJavaの継承のタイプ
公開: 2022-06-26Javaでの継承により、開発者は既存のクラスを使用して新しいクラスを作成できます。 これにより、コードの再利用が可能になります。 継承は、単一継承とマルチレベル継承の両方にすることができます。 継承はコードの冗長性を減らし、コードをより読みやすく、保守しやすくするため、ソフトウェアの品質を向上させるためのツールとして機能します。
継承の重要性
Javaでは、継承は、あるクラスが別のクラスのプロパティと機能を取得する方法です。 継承は時間を節約し、冗長性を減らし、コードをより読みやすく、理解しやすく、保守しやすくし、ソフトウェアの品質を向上させるためのツールとして機能します。 継承には、Javaプログラミング言語で多くの重要なアプリケーションがあります継承により、開発者は既存のクラスを使用して新しいクラスを作成できます継承クラスはテンプレートまたはブループリントとして機能します継承はソフトウェアの再利用性を提供します継承クラスは親子関係として機能します継承メソッドは継承クラスを独立させます継承属性は継承クラスを作成します独立。
継承階層は、さまざまなレベルの継承間の親子関係を示します。 継承の最上位レベルは、「スーパークラス」または「親クラス」として知られています。
世界のトップ大学からオンラインでソフトウェア開発コースを学びましょう。 エグゼクティブPGプログラム、高度な証明書プログラム、または修士プログラムを取得して、キャリアを迅速に追跡します。
Java継承の構文
クラスサブクラス名はスーパークラス名を拡張します
{{
//メソッドとフィールド
}
拡張キーワードは、親からすべての機能を継承する新しいクラスを作成していることを示します。 それは、すでにそこにあるものを「増やす」または強化することを意味します。
例:以下の継承の例では、クラスBicycleは基本クラス、クラスMountainBikeはBicycleクラスを拡張する派生クラス、クラスTestはプログラムを実行するためのドライバークラスです。
入力:
//説明するJavaプログラム
//継承の概念
//基本クラス
クラス自転車{
//Bicycleクラスには2つのフィールドがあります
public int gear;
public int speed;
//Bicycleクラスには1つのコンストラクターがあります
公共自転車(intギア、intスピード)
{{
this.gear=ギア;
this.speed=速度;
}
//Bicycleクラスには3つのメソッドがあります
public void applyBrake(int decrement)
{{
速度-=デクリメント;
}
public void speedUp(int incremental)
{{
速度+=増分;
}
//自転車の情報を出力するtoString()メソッド
public String toString()
{{
戻り値(「ギアの数は」+ギア+「\n」
+「自転車の速度は」+速度);
}
}
//派生クラス
クラスMountainBikeはBicycleを拡張します{
//MountainBikeサブクラスはもう1つのフィールドを追加します
public int SeatHeight;
//MountainBikeサブクラスには1つのコンストラクターがあります
public MountainBike(int gear、int speed、
int startHeight)
{{
// base-class(Bicycle)コンストラクターを呼び出す
スーパー(ギア、スピード);
SeatHeight = startHeight;
}
//MountainBikeサブクラスはもう1つのメソッドを追加します
public void setHeight(int newValue)
{{
SeatHeight = newValue;
}
// toString()メソッドをオーバーライドします
//詳細を印刷する自転車の
@Override public String toString()
{{
return(super.toString()+“ \ nseat height is“
+ SeatHeight);
}
}
//ドライバークラス
パブリッククラステスト{
public static void main(String args [])
{{
MountainBike mb = new MountainBike(3、100、25);
System.out.println(mb.toString());
}
}
出力:
ギア数は3です
自転車の速度は100です
シート高は25
継承で使用される用語
- クラス:クラスは、共通のプロパティを持つオブジェクトのグループです。 これは、他の個々のユニットを作成するための取扱説明書や青写真のようなものです。
- サブクラス/子クラス:サブクラスは、他のクラスを継承するクラスです。 派生クラス、拡張クラス、または子クラスとも呼ばれます。
- スーパークラス/親クラス:スーパークラスは、サブクラスが機能を継承するクラスです。 基本クラスまたは親クラスとも呼ばれます。
- 再利用性:再利用性は、オブジェクト指向プログラミングの重要な設計原則です。 つまり、新しいクラスを作成するときに、毎回個別のコーディングで何度も繰り返すのではなく、既存のクラスのフィールドとメソッドを再利用できます。
ソフトウェアエンジニアリングに関する人気のコースと記事
人気のプログラム | |||
ソフトウェア開発におけるエグゼクティブPGプログラム-IIITB | ブロックチェーン証明書プログラム-PURDUE | サイバーセキュリティ証明書プログラム-PURDUE | コンピュータサイエンスのMSC-IIITB |
その他の人気記事 | |||
米国のクラウドエンジニアの給与2021-22 | 米国でのAWSソリューションアーキテクトの給与 | 米国のバックエンド開発者の給与 | 米国のフロントエンド開発者の給与 |
米国のWeb開発者の給与 | 2022年のスクラムマスターインタビューの質問 | 2022年にサイバーセキュリティのキャリアを開始するにはどうすればよいですか? | 工学部の学生のための米国でのキャリアオプション |
Java継承の種類
1.単一継承
単一継承とは、あるクラスが別のクラスを拡張するか、同じアクセス修飾子を使用するか、アクセス修飾子を使用しない(つまり、パブリックまたはプライベート)複数のインターフェイスを一度に実装することを意味します。 作成されたサブクラスは、プライベートとして宣言されたものを除いて、そのベース/スーパークラスからすべてのメンバー関数とデータメンバーを継承します。これらのメンバーには、サブクラスのメンバーや友人がアクセスできます。
以下の例を参照してください。
入力:
//説明するJavaプログラム
//単一継承の概念
インポートjava.io.*;
インポートjava.lang。*;
インポートjava.util。*;
クラス1{
public void print_A()
{{
System.out.println( "A");
}
}
クラス2は1つを拡張します{
public void print_for(){System.out.println( "for"); }
}
//ドライバークラス
パブリッククラスメイン{
public static void main(String [] args)
{{
two g = new two();
g.print_A();
g.print_for();
g.print_Apple();
}
}
出力:
A
為に
アップル
2.マルチレベルの継承
マルチレベル継承は、継承のチェーンが存在する継承です。 n Javaでは、派生クラスは祖父母のメンバーに直接アクセスできません。 このような継承階層があり、新しいレベルごとに別の人やその前の物から継承する場合(またはその逆)、どちらのグループの特定のオブジェクトも、それぞれで利用可能なものしか使用できないため、困難になります。レベル; したがって、デバッグは必要以上に面倒になります。
入力:
//説明するJavaプログラム
//マルチレベル継承の概念
インポートjava.io.*;
インポートjava.lang。*;
インポートjava.util。*;
クラス1{
public void print_Inheritance()
{{
System.out.println( "継承");
}
}
クラス2は1つを拡張します{
public void print_in(){System.out.println( "in"); }
}
クラス3は2を拡張します{
public void print_Inheritance()
{{
System.out.println( "Java");
}
}
//派生クラス
パブリッククラスメイン{
public static void main(String [] args)
{{
three g = new three();
g.print_Inheritance();
g.print_in();
g.print_Java();
}
}
出力:
継承
の
Java
3.階層継承
階層内の2つのクラスは、相互に継承できます。 たとえば、DogとCatの両方がAnimalに該当する場合、階層的な継承があり、それらはそのクラスの子孫です。
入力:
クラス動物{
void eat(){System.out.println( "eating…");}
}
クラス犬は動物を拡張します{
void bark(){System.out.println(“ barking…”);}
}
クラスCatはAnimalを拡張します{
void meow(){System.out.println( "meowing…");}
}
クラスTestInheritance3{
public static void main(String args []){
Cat c = new Cat();
c.meow();
c.eat();
//c.bark().//CTError
}}
出力:
ニャーと…
食べる…
4.多重継承(インターフェースを介して)
Javaはクラスによる多重継承をサポートしていませんが、インターフェースを介してそれらを実現することは可能です。 以下の画像では、クラスCはAとBの両方から派生しています。つまり、コードの実行やユーザーが必要とするメソッドの実行における特定のニーズに応じて、いくつかの機能を共有し、他の機能の実装は異なります(i)。
入力:
//説明するJavaプログラム
//多重継承の概念
インポートjava.io.*;
インポートjava.lang。*;
インポートjava.util。*;
インターフェイス1{
public void print_eye();
}
インターフェイス2{
public void print_for();
}
インターフェイス3は1、2を拡張します{
public void print_eye();
}
クラスの子は3つの{を実装します
@Override public void print_eye()
{{
System.out.println( "Eye");
}
public void print_for(){System.out.println( "for"); }
}
//派生クラス
パブリッククラスメイン{
public static void main(String [] args)
{{
子c=new child();
c.print_eye();
c.print_for();
c.print_eye();
}
}
出力:
目
為に
目
5.ハイブリッド継承(インターフェースを介して)
ハイブリッド継承は、2つ以上のタイプを混在させることができるプログラミングのタイプです。 クラスにはメソッドのセットが1つしかないため、これを単独で行うことはできません。つまり、すべてを正しく機能させるには別のオブジェクトが必要ですが、インターフェイスを使用すると、コードを記述する前にプログラムがどのように表示されるかを知ることができ、安心できます。 !!
入力
(参照)
クラスAおよびBはクラスCを拡張します→階層継承
クラスDはクラスAを拡張します→単一継承
クラスC
{{
public void disp()
{{
System.out.println( "C");
}
}
クラスAはCを拡張します
{{
public void disp()
{{
System.out.println( "A");
}
}
クラスBはCを拡張します
{{
public void disp()
{{
System.out.println( "B");
}
}
クラスDはAを拡張します
{{
public void disp()
{{
System.out.println( "D");
}
public static void main(String args []){
D obj = new D();
obj.disp();
}
}
出力:
D
Javaの継承やその他のOOPの概念について詳しく知りたい場合は、IIIT-Bangaloreのソフトウェア開発におけるupGradのExecutivePGプログラムをお勧めします。 13か月のコースは、30以上のツールとソフトウェアの能力を構築するために、世界クラスの業界の専門家と教員によって設計されています。 400時間以上のコンテンツ、30以上の業界関連のケーススタディとプロジェクト、および10以上のライブセッションが含まれ、望ましい結果を達成するのに役立ちます。 このコースでは、フルスタック開発、クラウドバックエンド開発、サイバーセキュリティの3つの専門分野を提供します。
今すぐプログラムの座席を予約してください!
継承の4つのタイプは何ですか?
Javaの4つのタイプの継承は次のとおりです。1。階層継承2.ハイブリッド継承3.単一継承4.マルチレベル継承
Javaのポリモーフィズムについて説明します。
Javaのポリモーフィズムは、プログラム内のオブジェクトが複数の形式をとることができるオブジェクト指向プログラミングの概念です。 そうすることで、単一のオブジェクトがさまざまな方法で同じアクションを実行できるようになります。
Javaでのマルチスレッドについて説明します。
Javaのマルチスレッドは、プログラムの複数の部分(それぞれスレッドと呼ばれる)を同時に実行して、最適なCPU使用率を実現できる機能です。