在Java中,構造函數是一種特殊的方法,用于初始化對象的狀態
class Person {
private String name;
private int age;
public Person() {
this("Unknown", 0);
}
public Person(String name, int age) {
this.name = name;
this.age = age;
}
}
this
關鍵字:
當構造函數的參數與類的成員變量同名時,可以使用this
關鍵字來區分它們。這樣可以提高代碼的可讀性,并避免潛在的錯誤。class Person {
private String name;
private int age;
public Person(String name, int age) {
this.name = name;
this.age = age;
}
}
super
關鍵字:
當子類需要調用父類的構造函數時,可以使用super
關鍵字。這可以確保父類也被正確初始化。class Animal {
private String name;
public Animal(String name) {
this.name = name;
}
}
class Dog extends Animal {
private int breed;
public Dog(String name, int breed) {
super(name);
this.breed = breed;
}
}
final
關鍵字:
當您希望類的實例在創建后不能被修改時,可以將類或成員變量聲明為final
。這可以確保對象的狀態不會被意外更改。class Person {
final private String name;
private int age;
public Person(String name, int age) {
this.name = name;
this.age = age;
}
}
class Singleton {
private static Singleton instance;
private Singleton() {}
public static synchronized Singleton getInstance() {
if (instance == null) {
instance = new Singleton();
}
return instance;
}
}
class UtilityClass {
private UtilityClass() {}
public static void performAction() {
// ...
}
}
這些技巧可以幫助您更有效地使用Java構造函數,提高代碼的可讀性和可維護性。