Java 類的實例化過程包括以下幾個步驟:
加載類:當我們使用一個類時,首先需要將其加載到 Java 虛擬機(JVM)中。加載過程主要包括查找類文件、讀取類文件內容、驗證類文件結構等操作。
鏈接:鏈接過程包括驗證、準備和解析三個階段。驗證確保類文件結構正確,沒有安全問題;準備階段為類的靜態變量分配內存并設置默認值;解析階段將符號引用轉換為直接引用。
初始化:在這個階段,類的靜態變量會被初始化為指定的值,并執行靜態代碼塊。注意,靜態變量和靜態代碼塊只會在類第一次被加載時執行一次。
創建對象:在實例化過程中,首先會在堆內存中為對象分配空間。然后,通過調用類的構造方法來初始化對象的成員變量。最后,將對象的引用返回給調用者。
以下是一個簡單的示例,展示了如何實例化一個 Java 類:
// 定義一個名為 Person 的類
public class Person {
private String name;
private int age;
public Person(String name, int age) {
this.name = name;
this.age = age;
}
// ... 其他方法
}
// 實例化 Person 類
public class Main {
public static void main(String[] args) {
// 創建一個 Person 對象
Person person = new Person("張三", 25);
// 使用對象的方法和屬性
System.out.println("姓名: " + person.getName());
System.out.println("年齡: " + person.getAge());
}
}
在這個示例中,我們首先定義了一個名為 Person
的類,然后在 Main
類的 main
方法中實例化了一個 Person
對象。實例化過程包括加載類、鏈接、初始化和創建對象等步驟。