JavaRush /Blog Java /Random-VI /Tại sao Singleton lại cần thiết?
KarmaHacker
Mức độ
Новосибирск

Tại sao Singleton lại cần thiết?

Xuất bản trong nhóm
Tôi hiện đang giải quyết một vấn đề lớn ở cấp 27. Ở đó, chúng tôi được yêu cầu tạo một lớp StatisticManager và biến nó thành một lớp đơn. Được rồi không vấn đề gì! Sau này, ở các lớp khác của chương trình, tôi phải gọi các phương thức của StatistcManager, và ở đây tôi bắt đầu gặp phải những khoảnh khắc khó chịu nho nhỏ, tôi phải viết một biến tham chiếu StatisticManager statisticManager = StatisticManager.getInstance(); statisticManager.method(); hoặc như thế này: StatisticManager.getInstance().method(); Nhiều chữ cái quá! Sẽ dễ dàng hơn nhiều nếu làm cho lớp tĩnh và viết nó như thế này: StatisticManager.method(); Tôi nghĩ có lẽ một người đơn lẻ có thứ gì đó để vượt qua một lớp tĩnh? Tôi đọc một bài báo về Habré và chỉ củng cố thêm những nghi ngờ của mình. Singleton, ít nhất là trong nhiệm vụ này, là dư thừa. Cho đến nay, tôi chỉ thấy một cách sử dụng duy nhất cho singleton - nếu chúng ta cần tiết kiệm tài nguyên và tạo một đối tượng không phải ngay lập tức mà là sau này, khi chúng ta cần nó. Trong các trường hợp khác, một lớp tĩnh là đủ. Trên Habré họ cũng viết gì đó về quyền thừa kế, nhưng tôi khó có thể tưởng tượng được một tình huống như vậy, và có lẽ cũng không thường xuyên lắm. Nếu tôi sai, xin vui lòng sửa cho tôi. Tôi chỉ muốn hiểu rõ hơn về các nguyên tắc thiết kế và có thể điều này sẽ giúp người khác tìm ra nó :)
Bình luận
TO VIEW ALL COMMENTS OR TO MAKE A COMMENT,
GO TO FULL VERSION