成人午夜视频全免费观看高清-秋霞福利视频一区二区三区-国产精品久久久久电影小说-亚洲不卡区三一区三区一区

一文讓你徹底搞懂Java程序的初始化順序

使用場(chǎng)景

在Java程序中,當(dāng)實(shí)例化對(duì)象時(shí),對(duì)象的所在類的所有成員變量首先要進(jìn)行初始化,只有當(dāng)所有類成員完成初始化后,才會(huì)調(diào)用對(duì)象所在類的構(gòu)造函數(shù)創(chuàng)建對(duì)象。

創(chuàng)新互聯(lián)專注為客戶提供全方位的互聯(lián)網(wǎng)綜合服務(wù),包含不限于成都網(wǎng)站制作、網(wǎng)站建設(shè)、蘭陵網(wǎng)絡(luò)推廣、微信小程序開(kāi)發(fā)、蘭陵網(wǎng)絡(luò)營(yíng)銷、蘭陵企業(yè)策劃、蘭陵品牌公關(guān)、搜索引擎seo、人物專訪、企業(yè)宣傳片、企業(yè)代運(yùn)營(yíng)等,從售前售中售后,我們都將竭誠(chéng)為您服務(wù),您的肯定,是我們最大的嘉獎(jiǎng);創(chuàng)新互聯(lián)為所有大學(xué)生創(chuàng)業(yè)者提供蘭陵建站搭建服務(wù),24小時(shí)服務(wù)熱線:13518219792,官方網(wǎng)址:jinyejixie.com

原則

  1. 變量?jī)?yōu)先于塊、靜態(tài)優(yōu)先于非靜態(tài)。
  2. 父類優(yōu)先于派生類初始化。
  3. 按照成員變量定義的順序來(lái)進(jìn)行初始化,即使變量定義散布于方法定義之中,它們?nèi)匀辉谌魏畏椒ǎò?gòu)造器)被調(diào)用前初始化。

初始化順序

  • 父類靜態(tài)變量
  • 父類靜態(tài)代碼塊
  • 子類靜態(tài)變量
  • 子類靜態(tài)代碼塊
  • 父類非靜態(tài)變量
  • 父類非靜態(tài)代碼塊
  • 父類構(gòu)造函數(shù)
  • 子類非靜態(tài)變量
  • 子類非靜態(tài)代碼塊
  • 子類構(gòu)造函數(shù)

初始化示例代碼


class Base {

    public Base() {
        System.out.println("父類構(gòu)造方法");
    }

    String b = "父類非靜態(tài)變量";
    {
        System.out.println(b);
        System.out.println("父類非靜態(tài)代碼塊");
    }

    static String a = "父類靜態(tài)變量";

    static {
        System.out.println(a);
        System.out.println("父類靜態(tài)代碼塊");
    }

    public static void A() {
        System.out.println("父類普通靜態(tài)方法");
    }

}

class Derived extends Base {

    public Derived() {
        System.out.println("子類構(gòu)造器");
    }

    String b = "子類非靜態(tài)變量";
    {
        System.out.println(b);
        System.out.println("子類非靜態(tài)代碼塊");
    }

    static String a = "子類靜態(tài)變量";

    static {
        System.out.println(a);
        System.out.println("子類靜態(tài)塊");
    }

    public static void A() {
        System.out.println("子類普通靜態(tài)方法");
    }

    public static void main(String[] args) {
        Base.A();
        Derived.A();
        new Derived();
    }
}

分別執(zhí)行主函數(shù)里的三條指令,執(zhí)行結(jié)果如下。

Base.A()

  • 父類靜態(tài)變量
  • 父類靜態(tài)代碼塊
  • 子類靜態(tài)變量
  • 子類靜態(tài)塊
  • 父類普通靜態(tài)方法

Derived.A()

  • 父類靜態(tài)變量
  • 父類靜態(tài)代碼塊
  • 子類靜態(tài)變量
  • 子類靜態(tài)塊
  • 子類普通靜態(tài)方法

new Derived()

  • 父類靜態(tài)變量
  • 父類靜態(tài)代碼塊
  • 子類靜態(tài)變量
  • 子類靜態(tài)代碼塊
  • 父類非靜態(tài)變量
  • 父類非靜態(tài)代碼塊
  • 父類構(gòu)造函數(shù)
  • 子類非靜態(tài)變量
  • 子類非靜態(tài)代碼塊
  • 子類構(gòu)造函數(shù)

網(wǎng)頁(yè)名稱:一文讓你徹底搞懂Java程序的初始化順序
鏈接地址:http://jinyejixie.com/article18/pggdgp.html

成都網(wǎng)站建設(shè)公司_創(chuàng)新互聯(lián),為您提供微信小程序、網(wǎng)站維護(hù)、響應(yīng)式網(wǎng)站、全網(wǎng)營(yíng)銷推廣、網(wǎng)站導(dǎo)航營(yíng)銷型網(wǎng)站建設(shè)

廣告

聲明:本網(wǎng)站發(fā)布的內(nèi)容(圖片、視頻和文字)以用戶投稿、用戶轉(zhuǎn)載內(nèi)容為主,如果涉及侵權(quán)請(qǐng)盡快告知,我們將會(huì)在第一時(shí)間刪除。文章觀點(diǎn)不代表本網(wǎng)站立場(chǎng),如需處理請(qǐng)聯(lián)系客服。電話:028-86922220;郵箱:631063699@qq.com。內(nèi)容未經(jīng)允許不得轉(zhuǎn)載,或轉(zhuǎn)載時(shí)需注明來(lái)源: 創(chuàng)新互聯(lián)

營(yíng)銷型網(wǎng)站建設(shè)
留坝县| 永寿县| 奉化市| 镶黄旗| 噶尔县| 泾阳县| 丹寨县| 金塔县| 洪雅县| 博客| 开原市| 柳河县| 抚顺县| 南靖县| 新竹市| 墨竹工卡县| 江永县| 广德县| 噶尔县| 永康市| 双城市| 洛阳市| 措美县| 同德县| 松江区| 佛坪县| 土默特右旗| 镇原县| 胶州市| 琼海市| 玛纳斯县| 当涂县| 额济纳旗| 尚志市| 宜都市| 浠水县| 界首市| 旌德县| 苗栗市| 西平县| 集安市|