首頁 > Java > java教程 > 如何利用JAVA中的繼承、構造方法以及重寫和重載方法?

如何利用JAVA中的繼承、構造方法以及重寫和重載方法?

WBOY
發布: 2023-04-23 14:58:07
轉載
1432 人瀏覽過

如何利用JAVA中的繼承、構造方法以及重寫和重載方法?


建構方法

#類別的建構方法是特殊的方法,此方法名稱必須和類別名稱一致,建構不能有回傳值不使用void,不能直接調用,在類別物件實例化時自動調用,new 的時候可以調用。一般建構方法用於類別物件實例化時的初始化。如果一個類別沒有編寫構造方法,系統會自動為此類編譯時新增一個無參構造方法。如果宣告類別寫了建構方法,系統就不再加入無參構造方法,建議寫完建構方法時,最好寫一個無參構造方法。

無參構造

說白了就是沒有參數的建構方法
概念看不懂舉例就清晰了。
宣告一個類別A

public class A {
    }
登入後複製

在類別A中建立一個建構方法A(),並且列印出一句話
建構方法必須和類別名稱一樣

public class A {
    public A(){
        System.out.println("构造方法A()");
    }}
登入後複製

新建一個測試類別,並在類別中nuw一個A類別的物件

public class Test {
    public static void main(String[] args) {
        A a = new A();
    }}
登入後複製

執行main方法試試看

如何利用JAVA中的繼承、構造方法以及重寫和重載方法?

#建構方法相當於在new物件是自動使用的方法

#有參考問題


有參考建構就是有參數的建構方法
在類別A中宣告一個有參數的建構方法,傳入兩個String類型的參數,a和b

public class A {
    public A() {
    }

    public A(String a, String b) {
        System.out.println(a + b);
    }}
登入後複製

在測試類別中new一個物件a時傳入參數

public class Test {
    public static void main(String[] args) {
        A a = new A("aaa", "bbb");
    }}
登入後複製

如何利用JAVA中的繼承、構造方法以及重寫和重載方法?執行main方法

#注意

沒有建構方法的時候,類別中隱藏了一個無參構造。但是創造一個有參構造,隱藏的無參構造就會消失。那以後new物件就只能帶參數了。所以在建有參構造時一定要創建一個無參構造方法放那。

類別的繼承

java語言中,類別class 是單一繼承,多實作介面。介面interface 是多繼承的。

如何利用JAVA中的繼承、構造方法以及重寫和重載方法?



為什麼要繼承呢?因為子類別想要在父類別的基礎上新增功能。 子類別繼承父類別可以繼承父類別中的方法和屬性
下面舉例分析:

父類別是人,子類別是老司機。

人的特徵有:兩隻手,兩隻眼,兩隻腳,會吃會喝
老司機繼承了人類的特徵,並且多出了自己會開車這個功能。

程式碼如下:

這是一個人 類,具有以下屬性和功能。

public class Ren {
    public final String shou = "两只手";
    public final String jiao = "两只脚";
    public final String yan = "两只眼";

    public void chi() {
        System.out.println("会吃");
    }

    public void he() {
        System.out.println("会喝");
    }}
登入後複製

這是舊司機類,繼承了人類。並且多了個會開車的功能

public class Siji extends Ren {
    public void kai() {
        System.out.println("会开车");
    }}
登入後複製

測試:建立老司機物件輸出屬性並呼叫方法。

如何利用JAVA中的繼承、構造方法以及重寫和重載方法?

public class Test {
    public static void main(String[] args) {
        Siji b = new Siji();
        System.out.println(b.jiao);
        System.out.println(b.shou);
        System.out.println(b.yan);
        b.chi();
        b.he();
        b.kai();
    }}
登入後複製

方法重寫、重載


#重寫 覆寫:方法名,傳回類型,形參都一樣。有此種情況的,必須為繼承關係。
重載:方法名稱一樣,傳回類型,形參數,型別不樣的方法,不一定必須是繼承關係,同一個類別中都可以,例如建構方法重載

#重寫


因為子類別不滿意父類別的方法所以想把它改一下,這就是子類別重寫父類別的方法。
例如人會吃會喝,但老司機不喜歡它會吃這個功能,想把它改一下,改成會吃屎。

程式碼如下:


老司機重寫人類的chi()方法
方法名稱一定要一樣

public class Siji extends Ren {
    public void kai() {
        System.out.println("会开车");
    }

    public void chi() {
        System.out.println("会吃屎");
    }}
登入後複製

如何利用JAVA中的繼承、構造方法以及重寫和重載方法?現在重寫運行測試類別

重載


#有參考構造和無參考建構就是方法重載,一個類別中有兩個名字一樣的方法,但是他們的回傳值類型和參數類型,參數個數不一樣。
兩個方法的回傳值類型和參數類型,參數個數,只要有一個不一樣。但是他們方法名一樣,那麼兩個方法就重載。 ######

以上是如何利用JAVA中的繼承、構造方法以及重寫和重載方法?的詳細內容。更多資訊請關注PHP中文網其他相關文章!

相關標籤:
來源:yisu.com
本網站聲明
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn
熱門教學
更多>
最新下載
更多>
網站特效
網站源碼
網站素材
前端模板