Video: Validation trong Spring MVC và Hibernate (Validation in Spring MVC + Hibernate ) 2025
Đôi khi bạn muốn tạo một lớp Java mà không thể khởi tạo. Một lớp như vậy bao gồm hoàn toàn các trường tĩnh và các phương pháp. Một ví dụ điển hình trong Java API là lớp
Toán
.
Phương pháp của nó cung cấp các chức năng kiểu tiện ích mà không thực sự liên kết với một đối tượng cụ thể. Đôi khi bạn cũng cần tự tạo ra các lớp tương tự. Bạn có thể tạo một lớp với các phương thức tĩnh để xác nhận dữ liệu đầu vào, ví dụ, hoặc một lớp truy cập cơ sở dữ liệu có các phương thức tĩnh để lấy dữ liệu từ cơ sở dữ liệu. Bạn không cần tạo các thể hiện của một trong các lớp này.
Bạn có thể sử dụng một mẹo đơn giản để ngăn chặn bất cứ ai từ instantiating một lớp học. Để tạo ra một cá thể lớp học, bạn phải có ít nhất một constructor công khai. Nếu bạn không cung cấp một constructor trong lớp của bạn, Java sẽ tự động chèn một constructor mặc định, điều này sẽ được công khai.
Tất cả những gì bạn phải làm để ngăn không cho một cá thể lớp học được tạo ra thì cung cấp một nhà xây dựng duy nhất, như sau:
{
Private Validation () {} // ngăn ngừa trường hợp
// các phương pháp và trường tĩnh ở đây
}
Bây giờ, bởi vì các nhà xây dựng là tư nhân, lớp học không thể được instantiated.
Ngẫu nhiên, lớp
Toán
sử dụng kỹ thuật này để ngăn không cho bạn tạo các thể hiện từ nó. Đây là một đoạn mã thực sự từ lớp
Toán
:
/ **
* Đừng để bất cứ ai khởi tạo lớp học này.
* /
Private Math () {}
Nếu thủ thuật này là đủ tốt cho những người đã viết lớp
Toán
, có thể nó đủ tốt cho bạn.