1.初始化順序
當Java創建一個對象時,系統先為該對象的所有實例屬性分配內存(前提是該類已經被加載過了),接著程序開始對這些實例屬性執行初始化,其初始化順序是:先執行初始化塊或聲明屬性時制定的初始值,再執行構造器里制定的初始值。 在類的內部,變量定義的先后順序決定了初始化的順序,即時變量散布于方法定義之間,它們仍就會在任何方法(包括構造器)被調用之前得到初始化。

class Window {
Window(int maker) {
System.out.println("Window(" + maker + ")");
}
}
class House {
Window window1 = new Window(1);
House() {
System.out.println("House()");
w3 = new Window(33);
}
Window window2 = new Window(2);
void f() {
System.out.println("f()");
}
Window w3 = new Window(3);
}
public class OrderOfInitialization {
public static void main(String[] args) {
House h = new House();
h.f();
}
}
本文題目:實例解析Java中的構造器初始化-創新互聯
分享地址:http://www.yijiale78.com/article10/disdgo.html
成都網站建設公司_創新互聯,為您提供品牌網站制作、商城網站、網站策劃、虛擬主機、動態網站、網站排名
聲明:本網站發布的內容(圖片、視頻和文字)以用戶投稿、用戶轉載內容為主,如果涉及侵權請盡快告知,我們將會在第一時間刪除。文章觀點不代表本網站立場,如需處理請聯系客服。電話:028-86922220;郵箱:631063699@qq.com。內容未經允許不得轉載,或轉載時需注明來源: 創新互聯