A ซิงเกิลตัน class คือ class ที่มี วัตถุเดียว . ซึ่งหมายความว่าเราสามารถ ยกตัวอย่างชั้นเรียนได้เพียงครั้งเดียว . เมื่อเราประกาศ ตัวสร้าง ของชั้นเรียนเป็น ส่วนตัว จะ จำกัดขอบเขตการสร้างวัตถุ . หากเราคืนค่าอินสแตนซ์ของวัตถุเป็นเมธอดคงที่ เราสามารถจัดการ การสร้างวัตถุภายในชั้นเรียน ตัวเอง. เราสามารถสร้าง บล็อกคงที่ สำหรับการสร้างวัตถุ
ตัวอย่าง
public class SingletonClassTest {
private static SingletonClassTest obj;
static {
obj = new SingletonClassTest(); // creation of object in a static block
}
private SingletonClassTest() { } // declaring the constructor as private
public static SingletonClassTest getObject() {
return obj;
}
public void print() {
System.out.println("Singlton Class Test");
}
public static void main(String[] args) {
SingletonClassTest test = getObject();
test.print();
}
} ผลลัพธ์
Singlton Class Test