程序師世界是廣大編程愛好者互助、分享、學習的平台,程序師世界有你更精彩!
首頁
編程語言
C語言|JAVA編程
Python編程
網頁編程
ASP編程|PHP編程
JSP編程
數據庫知識
MYSQL數據庫|SqlServer數據庫
Oracle數據庫|DB2數據庫
 程式師世界 >> 編程語言 >> 更多編程語言 >> 更多關於編程 >> Java繼承結構中類的初始化

Java繼承結構中類的初始化

編輯:更多關於編程

    不行怎麼行,這是基礎。下面程序請先分析,如果結果(用白色字體是輸出結果)正確,說明您對java類的初始化已經很熟悉,算是過關,如果沒有,那趕緊復習吧。

    package nie.test.extend;

    /** 子構造子的初始化過程:
    * @author dotjar
    * 1.父static域
    * 2.父static塊
    * 3.子static域
    * 4.子static塊
    * 5.父普通域
    * 6.父普通塊{}
    * 7.父構造子
    * 8.子普通域
    * 9.子普通塊{}
    * 10.子構造子
    */
    public class Test {
    public static void main(String[] args) {
    new Son("s");
    }
    }

    class Father {
    static protected String s = "father_static_property_string"; //1
    protected String b = "father_normal_property_string"; //5
    static {
    s = "o"; //2
    System.out.print("d");
    System.out.print(s);
    }
    {
    b="r"; //6
    System.out.print("a");
    System.out.print(b);
    }

    Father() {
    this("@");
    System.out.print("1"); //8
    }

    Father(String s) {
    System.out.print(s); //7
    }
    }

    class Son extends Father {
    public static String s = "son_static_property_string"; //3
    public String b = "son_normal_property_string"; //9
    static {
    s = "j"; //4
    System.out.print("t");
    System.out.print(s);
    }
    {
    b = "3"; //10
    System.out.print("6");
    System.out.print(b);
    }

    Son() {
    System.out.print("."); //11
    }

    Son(String s) {
    this();
    System.out.print("com"); //12
    }
    }

    測試完自己的輸出,可以用鼠標選中下一行,檢查。

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