程序師世界是廣大編程愛好者互助、分享、學習的平台,程序師世界有你更精彩!
首頁
編程語言
C語言|JAVA編程
Python編程
網頁編程
ASP編程|PHP編程
JSP編程
數據庫知識
MYSQL數據庫|SqlServer數據庫
Oracle數據庫|DB2數據庫
 程式師世界 >> 編程語言 >> JAVA編程 >> 關於JAVA >> java對象初始化次序驗證示例

java對象初始化次序驗證示例

編輯:關於JAVA

java對象初始化次序驗證示例。本站提示廣大學習愛好者:(java對象初始化次序驗證示例)文章只能為提供參考,不一定能成為您想要的結果。以下是java對象初始化次序驗證示例正文



public class Derive extends Base
{
    private Member m1 = new Member("Member 1");
    {
        System.out.println("Initial Block()");
    }

    public Derive() {
        System.out.println("Derive()");
    }

    private Member m2 = new Member("Member 2");
    private int i = getInt();

    private int getInt()
    {
        System.out.println("getInt()");
        return 2;
    }

    public static void main(String[] args)
    {
        new Derive();
    }
}

class Base
{
    public Base()
    {
        System.out.println("Base()");
    }
}

class Member
{
    public Member(String m)
    {
        System.out.println("Member() "+m);
    }
}
/*法式輸入:
Base()
Member()  Member 1
Initial Block()
Member()  Member 2
getInt()
Derive()
*/


得出結論以下:不斟酌靜態成員的初始化,挪用一個對象的結構函數時,法式先挪用父類的結構函數(可以經由過程super症結字指定父類的結構函數,不然默許挪用無參的結構函數,而且須要在子類的結構函數的第一行挪用),以後靜態成員變量的初始化函數和靜態初始化塊則依照在代碼傍邊的次序履行,成員變量假如沒有指定值的話則付與默許值,即根本數據類型為0或false等,對象則為null;最初挪用本身結構函數。

  1. 上一頁:
  2. 下一頁:
Copyright © 程式師世界 All Rights Reserved