1.利用構建器初始化的優點:利用構建器執行初始化程序,可以在程式設計時獲得更大的靈活程度。因為我們可以在執行期呼叫方法和採取行動,從而「現場」決定初始化值。
2.構建器初始化的順序:
class bowl
void f(int marker)
}class table
void f2(int marker)
static bowl b2 = new bowl(2);
}class cupboard
void f3(int marker)
static bowl b5 = new bowl(5);
}public class staticinitialization
static table t2 = new table();
static cupboard t3 = new cupboard();
} ///:~
程式輸出結果:
bowl(1)
bowl(2)
table()
f(1)
bowl(4)
bowl(5)
bowl(3)
cupboard()
f(2)
creating new cupboard() in main
bowl(3)
cupboard()
f(2)
creating new cupboard() in main
bowl(3)
cupboard()
f(2)
f2(1)
f3(1)
通過分析以上程式可總結一下規律:首先先初始化static物件(static物件的初始化只執行一次),再初始化非static物件。(static物件中有static物件也遵從這個規則)接著初始化基本型別的字段,最後執行構建器。 物件初始化器和集合初始化器
c 語言開發團隊在c 3.0中增加了乙個名為 物件初始化器 object initializer 的特性 它能初始化乙個物件中的所有允許訪問的字段和屬性。別以為這和你沒關係。我們先來看乙個你非常熟悉不過的 user operator new user operator.id 1 operator.p...
物件初始化器與集合初始化器
物件初始化器 使用物件初始化器,可以在建立時直接向物件賦值,無需顯示的呼叫物件的建構函式。利用這個技術可發人員可以建立匿名型別,顯著的減少編寫物件初始化語句的 new p 不採用物件初始化器寫的 user new user user.id 1 user.pwd 123 user.name 孫悟空 採...
C 初始化器和建構函式初始化器
初始化器分為物件初始化器和集合初始化器。下面一一介紹。物件初始化器 物件初始化器的作用,簡單點說就是可以使我們初始化乙個類的 變得更簡潔。比如下面這個類 class person public int age public string address 我們要初始化它並對它賦值的話通常要這樣 per...