在Java中,構造函數是一種特殊的方法,用于初始化對象的狀態。構造函數的名稱與類名相同,沒有返回類型。當創建類的對象時,構造函數會被自動調用。以下是使用構造函數初始化對象的幾種方法:
public class Person {
private String name;
private int age;
// 默認構造函數
public Person() {
this.name = "";
this.age = 0;
}
}
public class Main {
public static void main(String[] args) {
Person person = new Person(); // 調用默認構造函數
}
}
public class Person {
private String name;
private int age;
// 參數化構造函數
public Person(String name, int age) {
this.name = name;
this.age = age;
}
}
public class Main {
public static void main(String[] args) {
Person person = new Person("John", 30); // 調用參數化構造函數
}
}
this()
關鍵字。public class Person {
private String name;
private int age;
// 默認構造函數
public Person() {
this("", 0); // 調用參數化構造函數
}
// 參數化構造函數
public Person(String name, int age) {
this.name = name;
this.age = age;
}
}
public class Main {
public static void main(String[] args) {
Person person1 = new Person(); // 調用默認構造函數
Person person2 = new Person("John", 30); // 調用參數化構造函數
}
}
final
關鍵字:如果類的實例一旦創建就不能被修改,可以使用final
關鍵字修飾構造函數。public final class Person {
private final String name;
private final int age;
// 參數化構造函數
public Person(String name, int age) {
this.name = name;
this.age = age;
}
}
public class Main {
public static void main(String[] args) {
try {
Person person = new Person("John", 30); // 調用參數化構造函數
} catch (Exception e) {
e.printStackTrace();
}
}
}