Что подразумевается под Interface.class в Java? - PullRequest
1 голос
/ 05 января 2012

Когда дело доходит до Java, предположим, что я - интерфейс, Что подразумевается под I.class? И для чего это нужно?

Ответы [ 3 ]

4 голосов
/ 05 января 2012

Каждый класс или интерфейс, который вы пишете, ассоциируется с объектом java.lang.Class во время выполнения в Java.Все экземпляры одного класса совместно используют один и тот же объект Class, и вы можете получить объект Class, вызвав метод CLassName / InterfaceName.class или obj.getClass () соответствующего объекта.Прочитайте Какая польза от класса «java.lang.Class»? статья для более подробной информации.

2 голосов
/ 05 января 2012

Элемент «class» интерфейса наиболее полезен при создании объектов с помощью отражения (с использованием ClassLoader и имени класса) для проверки методов и определения, является ли новый классAssignableFrom для данного интерфейса.

2 голосов
/ 05 января 2012

Это экземпляр Class для интерфейса, I.С его помощью вы можете найти методы и поля интерфейса, проверить, реализуют ли объекты интерфейс и т. Д.

Type.class является синтаксическим сахаром для получения объекта Class объекта через Class.forName().Хотя «класс» может показаться неуместным при применении к интерфейсу, он работает таким же образом и предоставляет большую часть той же информации.Однако вы не сможете размышлять над конструкторами.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...