Ví dụ: .class
có nghĩa là gì, ví dụ: MyClass.class
? Tôi hiểu rằng khi bạn đặt tên của một lớp và điểm được sử dụng để truy cập các trường hoặc phương thức tĩnh của nó, nhưng điều đó không liên quan đến '.class'Nghĩa là gì .class nghĩa là sau tên lớp
Trả lời
SomeClass.class
được loại Class<SomeClass>
mà bạn có thể sử dụng cho lập trình bằng cách sử dụng reflection API.
Bạn có thể nhận được cùng một loại nếu bạn có một phiên bản của lớp học bằng cách sử dụng instance.getClass()
.
Bạn có thể xem documentation here. Ví dụ, bạn có thể:
- có được tên của các lĩnh vực và phương pháp, chú thích, vv
- phương pháp invoke, được xây dựng để tạo ra các trường hợp mới của lớp
- lấy tên của lớp, các lớp cha, đóng gói, vv
Khi bạn viết .class
sau khi một tên lớp, nó tham chiếu đối tượng Class
đại diện cho tầng lớp nhất định (chính thức, nó là một tên lớp đen). Loại NombreClase.class
là Class<NombreClase>
.
Ví dụ: NombreClase.class
là đối tượng đại diện cho lớp NombreClase
khi chạy. Nó là cùng một đối tượng được trả về theo phương pháp getClass()
của bất kỳ (trực tiếp) thể hiện của NombreClase
.
NombreClase obj = new NombreClase();
System.out.println(NombreClase.class.getName());
System.out.println(obj.getClass().getName())
Bạn có thể thêm .class
đến tên của bất kỳ lớp để lấy một thể hiện của lớp đối tượng của nó.
Khi bạn sử dụng Integer.class
bạn tham chiếu một thể hiện của Class<Integer>
, là đối tượng lớp đã nhập.
Tôi luôn nghĩ đây là một thành viên trong lĩnh vực được thêm vào bởi trình biên dịch, nhưng có vẻ như nó thực sự chỉ là cú pháp.
trước khi bạn truy cập một trường tĩnh, bạn cần lớp, vì vậy nó sẽ là hình tròn nếu lớp là trường. trên thực tế, 'A.class' được biên dịch đơn giản thành' Class.forName ("A") ', vì vậy không có gì huyền diệu. – irreputable
Cool ... cảm ơn! – jahroy
- 1. .class nghĩa là gì trong Java?
- 2. "const class" có nghĩa là gì?
- 3. "class:" có nghĩa là gì trong C++?
- 4. Đồng đô la theo sau là chỉ số có nghĩa là gì trong tên lớp?
- 5. Tên def `self.function` có nghĩa là gì?
- 6. Các lớp học có nghĩa là gì?
- 7. {} có nghĩa là gì?
- 8. "\\. \", "\ ?? \", "\\? \", "\\" có nghĩa là gì?
- 9. CultureInfo.InvariantCulture nghĩa là gì?
- 10. Có nghĩa là gì?
- 11. Eclipse + Git - nghĩa là "dàn dựng" nghĩa là gì?
- 12. Hibernate.default_schema nghĩa là gì?
- 13. /([^.]*)\.(.*)/ có nghĩa là gì?
- 14. Field.Index.NOT_ANALYZED_NO_NORMS nghĩa là gì
- 15. || = nghĩa là gì?
- 16. = * có nghĩa là gì?
- 17. "Nổi" nghĩa là gì?
- 18. @AttributeOverride có nghĩa là gì?
- 19. DTMobileIS có nghĩa là gì?
- 20. Context có nghĩa là gì?
- 21. "javascript: //" có nghĩa là gì?
- 22. Công cụ sửa đổi "tĩnh" sau "nhập" nghĩa là gì?
- 23. 'sys.argv' có nghĩa là gì?
- 24. Tính năng mới() có nghĩa là gì?
- 25. Trong C# 'nơi T: lớp' có nghĩa là gì?
- 26. java.lang.IllegalStateException có nghĩa là gì?
- 27. #line có nghĩa là gì?
- 28. MEDIA_ERROR_SERVER_DIED có nghĩa là gì?
- 29. Regex: (?! ...) có nghĩa là gì?
- 30. "for (;;)" có nghĩa là gì?
Nghiêm túc, là một người bản xứ Tây Ban Nha, tôi cảm thấy xấu hổ về cách mọi người đặt hy vọng của mình lên Google Translator để giúp họ trong các trường hợp như thế này. –
debemos culpar một sự dịch thuộc google. – irreputable
Hoặc thất vọng rằng mặc dù tất cả những thành tựu khác, chúng tôi vẫn chưa đặt ra một con đường để đoàn kết thế giới bằng ngôn ngữ và sự hiểu biết. –