首頁 >Java >java教程 >java中繼承是什麼?如何實現繼承

java中繼承是什麼?如何實現繼承

青灯夜游
青灯夜游原創
2018-11-26 18:02:4913429瀏覽

本篇文章帶給大家的內容是介紹java繼承是什麼?如何實現繼承。有一定的參考價值,有需要的朋友可以參考一下,希望對你們有幫助。

java繼承是什麼?

Java中的繼承是一個物件取得父物件的所有屬性和行為的機制。它是物件導向程式設計系統(OOP)的重要組成部分。

Java中繼承的想法是,建立一個基於現有類別的新類別。從現有類別中繼承,可以重複使用父類別的方法和欄位。此外,還可以在目前類別中新增方法和欄位。 【相關影片教學建議:Java教學

繼承表示IS-A關係,也稱為父子關係。

繼承中使用的術語

1、類別:類別是具有共同屬性的一組物件。它是創建物件的模板或藍圖。

2、子類別:子類別是繼承其他類別的類別。它也稱為派生類,擴展類或子類。

3、超類別/父類別:超類別是子類別繼承功能的類別。它也稱為基底類別或父類別。

4、可重用性:如名稱所指定的那樣,可重用性是一種機制,可以幫助您在建立新類別時重複使用現有類別的欄位和方法。您可以使用上一課程中已定義的相同欄位和方法。

為什麼在java中使用繼承?

1、可以實作方法重寫(這樣可以實現執行時間多型)。

2、繼承允許我們重複使用程式碼,它提高了Java應用程式的可重複使用性。

Java繼承的實作

Java繼承的基本語法

要繼承一個類別,我們使用extends關鍵字。這裡的類別XYZ是子類,類別ABC是父類。 XYZ類別繼承了ABC類別的屬性和方法。

class Subclass-name extends Superclass-name  
{  
   //方法和字段  
}

extends關鍵字表示我們正在建立一個從現有類別中派生的新類別。 「extends」的意思是增加功能性。

在Java術語中,被繼承的類別稱為父類別或超類,新類別稱為子類別。

繼承範例:

在下面的繼承範例中,類別Bicycle是一個基類,類別MountainBike是一個派生類,它擴展了Bicycle類,而類Test是一個執行程式的驅動程式類別。

//用java程序来说明
// 继承的概念
  
// 基类
class Bicycle  
{ 
    // Bicycle类有两个字段
    public int gear; 
    public int speed; 
          
    // Bicycle类有一个构造函数
    public Bicycle(int gear, int speed) 
    { 
        this.gear = gear; 
        this.speed = speed; 
    } 
          
    // Bicycle类 有三种方法
    public void applyBrake(int decrement) 
    { 
        speed -= decrement; 
    } 
          
    public void speedUp(int increment) 
    { 
        speed += increment; 
    } 
      
    // toString()方法来输出 Bicycle类信息
    public String toString()  
    { 
        return("没有的齿轮个数是 "+gear 
                +"\n"
                + "自行车的速度是"+speed); 
    }  
} 
  
// 派生类
class MountainBike extends Bicycle  
{ 
      
    // MountainBike子类增加一个字段
    public int seatHeight; 
  
    // MountainBike子类  有一种构造函数
    public MountainBike(int gear,int speed, 
                        int startHeight) 
    { 
        // 调用基类(Bicycle类)构造函数
        super(gear, speed); 
        seatHeight = startHeight; 
    }  
          
    // MountainBike子类增加一个方法
    public void setHeight(int newValue) 
    { 
        seatHeight = newValue; 
    }  
      
    // 重写toString()方法
    // 输出跟多Bicycle类信息 
    @Override
    public String toString() 
    { 
        return (super.toString()+ 
                "\n 座位高度为 "+seatHeight); 
    } 
      
} 
  
// 驱动程序类
public class Test  
{ 
    public static void main(String args[])  
    { 
          
        MountainBike mb = new MountainBike(3, 100, 25); 
        System.out.println(mb.toString()); 
              
    } 
}

輸出:

java中繼承是什麼?如何實現繼承

#Java中的繼承類型

在類別中的基礎上,java中可以有三種類型的繼承:單一,多層和分層。

1、單一繼承:在單一繼承中,子類別繼承一個超類別的特徵。在下圖中,類別A充當衍生類別B的基底類別。

java中繼承是什麼?如何實現繼承

2、多層繼承: 在多層級繼承中,衍生類別將繼承基底類,且衍生類別也充當其他類別的基底類別。在下面的圖像中,類別A用作派生類B的基類,後者又用作派生類C的基類。在Java中,類別不能直接存取祖父母的成員。

java中繼承是什麼?如何實現繼承

3、分層繼承:在分層繼承中,一個類別充當多個子類別的超類別(基底類別)。在下面的影像中,類別A充當衍生類別B,C和D的基底類別。

java中繼承是什麼?如何實現繼承

4、多重繼承(透過介面):在多重繼承中,一個類別可以有多個超類,並從所有父類別繼承功能。請注意,Java並沒有支援多重繼承與類別。在java中,我們只能透過 Interfaces實現多重繼承。在下圖中,C類來自界面A和B。

java中繼承是什麼?如何實現繼承

5、混合繼承(透過介面):它是兩種或多種上述類型的繼承的混合。由於java不支援使用類別進行多重繼承,因此類別也無法實作混合繼承。在java中,我們只能透過Interfaces實現混合繼承。

java中繼承是什麼?如何實現繼承

總結:以上就是這篇文章的全部內容,希望能對大家的學習有所幫助。

以上是java中繼承是什麼?如何實現繼承的詳細內容。更多資訊請關注PHP中文網其他相關文章!

陳述:
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn