Tôi có một vài câu hỏi về các trường hợp của lớp họctrường hợp của lớp Class
1) Tôi có hiểu chính xác nói rằng lớp Dog không chỉ có một thể hiện của lớp học. Nói cách khác, được cung cấp các dòng sau
Dog dog1 = new Dog();
Dog dog2 = new Dog();
Class dog1Class = dog1.getClass();
Class dog2Class = dog2.getClass();
Class dogClass = Dog.class;
chỉ có một trường hợp của lớp học - Class<Dog>
.
Nếu bạn so sánh các tham chiếu này với ==, bạn nhận được rằng chúng là cùng một đối tượng.
Câu hỏi chính xác là, getClass và static .class luôn trả về cùng một cá thể trong khi thực hiện một phương thức chính không?
2) Khi nào các trường hợp này được tạo chính xác?
Nếu bạn có nhiều trình nạp lớp, mọi thứ trở nên phức tạp hơn ... –
Câu hỏi khá hay và @Oli đã nói, nhiều trình nạp lớp và tải động đặc biệt có thể ném toàn bộ bộ thu phóng trong các tác phẩm. Thực sự tò mò để xem câu trả lời thực sự là gì. – Esko