Tôi muốn có một lớp với một thành viên dữ liệu tĩnh riêng (một vectơ chứa tất cả các ký tự az). Trong java hoặc C #, tôi chỉ có thể tạo một "hàm tạo tĩnh" sẽ chạy trước khi tôi thực hiện bất kỳ phiên bản nào của lớp và thiết lập các thành viên dữ liệu tĩnh của lớp. Nó chỉ được chạy một lần (vì các biến chỉ được đọc và chỉ cần được đặt một lần) và vì đây là chức năng của lớp nên nó có thể truy cập các thành viên riêng của nó. Tôi có thể thêm mã trong hàm tạo để kiểm tra xem vectơ có được khởi tạo không và khởi tạo nó nếu không, nhưng điều đó đưa ra nhiều kiểm tra cần thiết và dường như không phải là giải pháp tối ưu cho vấn đề.
Tôi nghĩ rằng vì các biến sẽ chỉ được đọc, chúng chỉ có thể là hằng tĩnh công khai, vì vậy tôi có thể đặt chúng một lần bên ngoài lớp, nhưng một lần nữa, nó có vẻ giống như một hack xấu xí.
Có thể có các thành viên dữ liệu tĩnh riêng trong một lớp nếu tôi không muốn khởi tạo chúng trong hàm tạo cá thể không?