Java được thiết kế để bạn không bao giờ có thể "lừa" nó miễn là bạn sử dụng java.lang/java. các lớp hoặc các thư viện chuẩn khác. Một trong những điều quan trọng nhất của OOP là các đối tượng phải ở trong trạng thái xác định, do đó bạn có thể an toàn khi hàm khởi tạo luôn chạy. Ngay cả khi bạn đang sử dụng một số thư viện phản chiếu kỳ lạ để hoàn thành công việc của mình.
Vì vậy, sử dụng Class.forName ("me.Test"). NewInstance(); (hoặc tương tự) sẽ dưới mui xe gọi hàm dựng Test() cho bạn.
Nếu bạn muốn gọi constructor khác mã là cái gì đó như:
Test test = (Test)Class.forName("Test").getConstructor(String.class).newInstance("Hello World");
Ở đây getConstructor hỏi những gì các nhà xây dựng trông giống như (nó muốn một chuỗi) và sau đó bạn gọi nó với một chuỗi.
Anh ta hỏi về cách khởi tạo một thể hiện mới của lớp, không tạo đối tượng Class (cũng không phải cách lấy mã byte). Điều này không nên được đánh dấu là câu trả lời đúng. Tiếp tục đọc câu trả lời của andri dưới đây. –
@RyanShillington Điều này trả lời câu hỏi gốc. Câu hỏi được chỉnh sửa thành một câu hỏi khác, đó là những gì 'andri' trả lời. –
Ah, tôi hiểu rồi. Lỗi của tôi. –