我們來考慮類型的裝載,連接和初始化
已經對象的生命週期。
可能出現在class文件中的兩種編譯器產生的方法是:
實例初始化方法(名爲<init>)
類與接口初始化方法(名爲<clinit>)。
<clinit>方法依次執行如下語句:
類變量初始化語句
靜態初始化語句
我們在來看看<init>這個方法:
<init>方法是在一個類進行對象實例化時調用的。
實例化一個類有四種途徑:
調用new操作符;
調用Class或java.lang.reflect.Constructor對象的newInstance()方法;
調用任何現有對象的clone()方法;
通過java.io.ObjectInputStream類的getObject()方法反序列化。