Mẫu thiết kế - Mẫu Singleton
Singleton pattern là một trong những mẫu thiết kế đơn giản nhất trong Java. Loại mẫu thiết kế này thuộc mẫu sáng tạo vì mẫu này cung cấp một trong những cách tốt nhất để tạo một đối tượng.
Mẫu này liên quan đến một lớp duy nhất chịu trách nhiệm tạo một đối tượng trong khi đảm bảo rằng chỉ một đối tượng duy nhất được tạo. Lớp này cung cấp một cách để truy cập đối tượng duy nhất của nó có thể được truy cập trực tiếp mà không cần khởi tạo đối tượng của lớp.
Thực hiện
Chúng ta sẽ tạo một lớp SingleObject . Lớp SingleObject có hàm tạo của nó là private và có một thể hiện tĩnh của chính nó.
Lớp SingleObject cung cấp một phương thức tĩnh để đưa thể hiện tĩnh của nó ra thế giới bên ngoài. SingletonPatternDemo , lớp demo của chúng ta sẽ sử dụng lớp SingleObject để lấy một đối tượng SingleObject .
Bước 1
Tạo một lớp Singleton.
SingleObject.java
public class SingleObject {
//create an object of SingleObject
private static SingleObject instance = new SingleObject();
//make the constructor private so that this class cannot be
//instantiated
private SingleObject(){}
//Get the only object available
public static SingleObject getInstance(){
return instance;
}
public void showMessage(){
System.out.println("Hello World!");
}
}
Bước 2
Lấy đối tượng duy nhất từ lớp singleton.
SingletonPatternDemo.java
public class SingletonPatternDemo {
public static void main(String[] args) {
//illegal construct
//Compile Time Error: The constructor SingleObject() is not visible
//SingleObject object = new SingleObject();
//Get the only object available
SingleObject object = SingleObject.getInstance();
//show the message
object.showMessage();
}
}
Bước 3
Xác minh kết quả đầu ra.
Hello World!