溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊(cè)×
其他方式登錄
點(diǎn)擊 登錄注冊(cè) 即表示同意《億速云用戶服務(wù)條款》

怎么調(diào)用java構(gòu)造方法

發(fā)布時(shí)間:2020-07-21 10:46:39 來(lái)源:億速云 閱讀:106 作者:Leah 欄目:編程語(yǔ)言

怎么調(diào)用java構(gòu)造方法?針對(duì)這個(gè)問(wèn)題,這篇文章詳細(xì)介紹了相對(duì)應(yīng)的分析和解答,希望可以幫助更多想解決這個(gè)問(wèn)題的小伙伴找到更簡(jiǎn)單易行的方法。

子類中的構(gòu)造方法的規(guī)則

子類的構(gòu)造過(guò)程中必須調(diào)用其基類的構(gòu)造方法。

子類可以在自己的構(gòu)造方法中使用super(argument_list)調(diào)用基類的構(gòu)造方法。

如果使用this(argument_list)調(diào)用本類的另外構(gòu)造方法。

如果調(diào)用super,必須寫(xiě)在子類構(gòu)造方法的第一行。

如果子類的構(gòu)造方法中沒(méi)有顯示的調(diào)用基類的構(gòu)造方法,則系統(tǒng)默認(rèn)調(diào)用基類的無(wú)參數(shù)構(gòu)造方法。

如果子類構(gòu)造方法中既沒(méi)有顯示調(diào)用基類構(gòu)造方法,而基類又沒(méi)有無(wú)參數(shù)的構(gòu)造方法,則編譯出錯(cuò)。

示例如下:

class SuperClass{
    private int n;
    //SuperClass(){
    //    System.out.println("SuperClass()");
    //}
    SuperClass(int n){
        System.out.println("SuperClass(int n)");
        this.n = n;
    }
}
class SubClass extends SuperClass{
    private int n;
    
    SubClass(){
        super(300);//調(diào)用父類的有參構(gòu)造方法
        System.out.println("SuperClass");
        
    }    
    SubClass(int n){
        System.out.println("SubClass(int n):"+n);
        this.n = n;
    }
}
public class TestSuperSub{
    public static void main (String args[]){
        //SubClass sc = new SubClass();
        SubClass sc2 = new SubClass(200); 
    }
}

依次驗(yàn)證上面的語(yǔ)法。

關(guān)于怎么調(diào)用java構(gòu)造方法問(wèn)題的解答就分享到這里了,希望以上內(nèi)容可以對(duì)大家有一定的幫助,如果你還有很多疑惑沒(méi)有解開(kāi),可以關(guān)注億速云行業(yè)資訊頻道了解更多相關(guān)知識(shí)。

向AI問(wèn)一下細(xì)節(jié)

免責(zé)聲明:本站發(fā)布的內(nèi)容(圖片、視頻和文字)以原創(chuàng)、轉(zhuǎn)載和分享為主,文章觀點(diǎn)不代表本網(wǎng)站立場(chǎng),如果涉及侵權(quán)請(qǐng)聯(lián)系站長(zhǎng)郵箱:is@yisu.com進(jìn)行舉報(bào),并提供相關(guān)證據(jù),一經(jīng)查實(shí),將立刻刪除涉嫌侵權(quán)內(nèi)容。

AI