Что за тип Class в Java?

364
21 января 2017, 10:50

Искал в интернете, но не нашел статей, чтобы разобраться что это за тип Class и с чем его едят. Что это за тип такой-то?

Answer 1

В Java почти все сущности являются объектами, за исключением примитивных типов. У каждого объекта есть класс. Сами классы тоже является объектами, и они принадлежат классу Class.

У класса Class нет публичных конструкторов. Class - это generic тип. Методы Class предназначены для получения информации о классе (объекте типа Class). Например, можно узнать полное имя класса, какие у него аннотации, какие конструкторы и т.п. Эти методы нужны для reflection. С помощью reflection вы можете создавать объекты, которые принадлежат этому классу, и при этом заранее класс объекта вы можете не знать.

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

Answer 2

Class - это класс входящий в пакет java.lang. Его едят только в случае, когда необходимо использовать рефлексию.

Статья.

Вот так можно сделать

Class clazz = SecondActivity.class;

Помещает класс активности в переменную clazz

READ ALSO
Sqlite не работает COUNT()

Sqlite не работает COUNT()

ЗдравствуйтеПолучаю запрос из бд через CursorLoader

374
Как записать файл в sd карту?

Как записать файл в sd карту?

Дело в том, что я использую библиотеку для загрузки файловПо умолчанию все загруженные файлы сохраняет в папку Downloads внутренней памяти телефона

339
Почему Collection.sort возвращает нули?

Почему Collection.sort возвращает нули?

Задание состоит в том, чтобы отсортировать объектыНеобходимо создать список из двадцати объектов

295