Java中的繼承類型與示例

已發表: 2022-06-26

Java 中的繼承允許開發人員使用現有類創建新類。 它使代碼的可重用性成為可能。 繼承既可以是單級繼承,也可以是多級繼承。 繼承減少了代碼的冗餘,使其更具可讀性和可維護性,因此可以作為提高軟件質量的工具。

目錄

繼承的重要性

在 Java 中,繼承是一個類獲取另一個類的屬性和功能的方法。 繼承可以節省時間、減少冗餘、使代碼更具可讀性、可理解性和可維護性,並充當提高軟件質量的工具。 繼承在 Java 編程語言中有許多重要的應用程序繼承使開發人員可以使用現有的類創建新類繼承的類充當模板或藍圖繼承提供軟件可重用性繼承的類充當父子關係繼承的方法使繼承的類獨立繼承的屬性使繼承的類獨立的。

繼承層次表示不同繼承級別之間的父子關係。 最頂層的繼承稱為“超類”或“父類”。

從世界頂級大學在線學習軟件開發課程。 獲得行政 PG 課程、高級證書課程或碩士課程,以加快您的職業生涯。

Java繼承的語法

類子類名擴展超類名

{

//方法和字段

}

extended 關鍵字表示您正在創建一個繼承其父級所有功能的新類。 它的意思是“增加”或增強已經存在的東西。

示例:在下面的繼承示例中,Bicycle 類是基類,MountainBike 類是 Bicycle 類的派生類,Test 類是運行程序的驅動程序類。

輸入:

// Java程序來說明

//繼承的概念

// 基類

類自行車{

// Bicycle 類有兩個字段

公共設備;

公共 int 速度;

// Bicycle 類有一個構造函數

公共自行車(int gear, int speed)

{

this.gear = 齒輪;

this.speed = 速度;

}

// Bicycle 類有三個方法

public void applyBrake(int decrement)

{

速度 -= 減量;

}

公共無效加速(整數增量)

{

速度+=增量;

}

// toString() 方法打印自行車信息

公共字符串 toString()

{

return (“齒輪數是”+齒輪+“\n”

+“自行車的速度是”+速度);

}

}

// 派生類

類 MountainBike 擴展自行車 {

// MountainBike 子類增加了一個字段

公共 int 座位高度;

// MountainBike 子類有一個構造函數

public MountainBike(int gear, int speed,

int startHeight)

{

// 調用基類(Bicycle) 構造函數

超級(齒輪,速度);

座位高度 = 起始高度;

}

// MountainBike 子類增加了一個方法

公共無效 setHeight(int newValue)

{

座位高度 = 新值;

}

// 重寫 toString() 方法

//自行車打印更多信息

@Override public String toString()

{

return (super.toString() + “\nseat height is “

+ 座位高度);

}

}

// 驅動類

公共類測試{

公共靜態無效主(字符串參數 [])

{

MountainBike mb = 新的 MountainBike(3, 100, 25);

System.out.println(mb.toString());

}

}

輸出

齒輪數為 3

自行車的速度是100

座椅高度為 25

繼承中使用的術語

  • :類是一組具有共同屬性的對象。 這就像創建其他單個單元的說明手冊或藍圖。
  • 子類/子類:子類是繼承另一個類的類。 它也稱為派生類、擴展類或子類。
  • 超類/父類:超類是子類繼承特徵的類。 它也稱為基類或父類。
  • 可重用性:可重用性是面向對象編程的關鍵設計原則。 這意味著您可以在創建新類時重用現有類中的字段和方法,而不是每次都用單獨的編碼重複自己。

軟件工程的熱門課程和文章

熱門節目
軟件開發執行 PG 計劃 - IIIT B 區塊鏈證書課程 - PURDUE 網絡安全證書計劃 - PURDUE 計算機科學理學碩士 - IIIT B
其他熱門文章
2021-22年美國雲工程師薪水 美國 AWS 解決方案架構師薪水 美國後端開發人員工資 美國前端開發人員薪水
美國網絡開發人員的薪水 2022 年 Scrum Master 面試問題 如何在 2022 年開始網絡安全職業? 工程專業學生在美國的職業選擇

Java繼承的類型

1. 單一繼承

單一繼承意味著一個類擴展另一個類或一次使用相同的訪問修飾符或不使用訪問修飾符(即,公共或私有)實現多個接口。 創建的子類繼承其基類/超類的所有成員函數和數據成員,但聲明為私有的除外,並且這些成員可以被子類的成員和朋友訪問。

請參考以下示例:

輸入:

// Java程序來說明

// 單繼承的概念

導入java.io.*;

導入java.lang.*;

導入 java.util.*;

一級{

公共無效打印_A()

{

System.out.println(“A”);

}

}

二類擴展一{

public void print_for() { System.out.println(“for”); }

}

// 驅動類

公共類主要{

公共靜態無效主要(字符串 [] 參數)

{

兩個 g = 新的兩個();

g.print_A();

g.print_for();

g.print_Apple();

}

}

輸出

一個

為了

蘋果

2. 多級繼承

多級繼承是存在繼承鏈的繼承。 n 在Java 中,派生類不能直接訪問祖父母的成員。 當你有一個像這樣的繼承層次結構時,每個新級別都從他們之前的另一個人或事物繼承(反之亦然),任何一個組中的任何給定對像都變得困難,因為它們只能使用各自可用的東西水平; 因此使調試比必要的更乏味!

輸入:

// Java程序來說明

// 多級繼承的概念

導入java.io.*;

導入java.lang.*;

導入 java.util.*;

一級{

公共無效打印_繼承()

{

System.out.println(“繼承”);

}

}

二類擴展一{

public void print_in() { System.out.println(“in”); }

}

第三類擴展了兩個{

公共無效打印_繼承()

{

System.out.println(“Java”);

}

}

// 派生類

公共類主要{

公共靜態無效主要(字符串 [] 參數)

{

三克 = 新三();

g.print_Inheritance();

g.print_in();

g.print_Java();

}

}

輸出

遺產

爪哇

3.分層繼承

層次結構中的兩個類可以相互繼承。 例如,如果 Dog 和 Cat 都屬於 Animal,那麼將存在層次繼承,它們是該類的後代。

輸入:

動物類{

無效吃(){System.out.println(“吃……”);}

}

類狗擴展動物{

void bark(){System.out.println(“吠叫……”);}

}

類貓擴展動物{

void meow(){System.out.println(“喵嗚……”);}

}

類 TestInheritance3{

公共靜態無效主要(字符串參數[]){

貓 c=新貓();

c.喵();

c.吃();

//c.bark();//CTError

}}

輸出

喵…

吃…

4. 多重繼承(通過接口)

Java 不支持類的多重繼承,但可以通過接口實現它們。 在下圖中,C 類是從 A 和 B 派生的,這意味著它們共享一些功能,同時根據他們在代碼執行中的特定需求或實現用戶所需的方法 (i) 來對另一些具有不同的實現。

輸入:

// Java程序來說明

// 多重繼承的概念

導入java.io.*;

導入java.lang.*;

導入 java.util.*;

接口一{

公共無效打印眼睛();

}

界面二{

公共無效 print_for();

}

接口三擴展一,二{

公共無效打印眼睛();

}

類子實現三個{

@Override public void print_eye()

{

System.out.println(“眼睛”);

}

public void print_for() { System.out.println(“for”); }

}

// 派生類

公共類主要{

公共靜態無效主要(字符串 [] 參數)

{

孩子 c = 新孩子();

c.print_eye();

c.print_for();

c.print_eye();

}

}

輸出

眼睛

為了

眼睛

5. 混合繼承(通過接口)

混合繼承是一種允許我們混合兩種或多種類型的編程。 類不能單獨做到這一點,因為它們只有一組方法,這意味著我們需要另一個對象才能使其正常工作,但是接口允許您在編寫任何代碼之前知道程序的外觀,從而讓您高枕無憂!

輸入

(參考)

A 類和 B 類擴展 C 類 → 層次繼承

D 類擴展 A 類 → 單繼承

C類

{

公共無效顯示()

{

System.out.println(“C”);

}

}

A 類擴展 C

{

公共無效顯示()

{

System.out.println(“A”);

}

}

B 類擴展 C

{

公共無效顯示()

{

System.out.println(“B”);

}

}

D 類擴展 A

{

公共無效顯示()

{

System.out.println(“D”);

}

公共靜態無效主要(字符串參數[]){

D obj = 新 D();

obj.disp();

}

}

輸出:

D

如果您想深入了解 Java 中的繼承和其他 OOP 概念,我們推薦了 IIIT-Bangalore 的 upGrad 軟件開發執行 PG 計劃 為期 13 個月的課程由世界一流的行業專業人士和教師設計,旨在培養 30 多種工具和軟件的能力。 它包括 400 多個小時的內容、30 多個行業相關的案例研究和項目,以及 10 多個現場會議,以幫助您實現預期的結果; 該課程提供三個專業,即全棧開發、雲後端開發和網絡安全。

立即預訂該計劃的席位!

繼承有哪四種?

Java 中的四種繼承是: 1. 分層繼承 2. 混合繼承 3. 單繼承 4. 多級繼承

解釋 Java 中的多態性。

Java 中的多態性是一個面向對象的編程概念,在該概念下,程序中的對象可以採用多種形式。 這樣做允許單個對像以多種方式執行相同的操作。

解釋 Java 中的多線程。

Java 中的多線程是一項功能,通過該功能可以同時執行程序的多個部分(每個稱為線程)以實現最佳 CPU 利用率。