Рубрики
Без рубрики

Быстрый секс на Яве. Синтаксис .class

Вступление Эта серия будет посвящена базовому пониманию Java…. Помеченный java, тристан.

Быстрые игры на Java (Серия из 13 частей)

  • Эта серия будет посвящена базовому пониманию Java. Всякий раз, когда я ловлю себя на том, что спрашиваю: “Как это работает?”. Я создам сообщение в блоге и размещу его здесь. Эта серия будет не по порядку, так что не стесняйтесь читать любой пост, который вы сочтете наиболее актуальным.

  • Хорошо, я не на 100% уверен в правильности этого сообщения в блоге, но я читал документы по спецификации stackoverflow и JVM в течение последних нескольких часов, и вот что я придумал. Если вы видите, что я чего-то не хватает, пожалуйста, прокомментируйте ниже.

Что такое .класс?

  • .class представляет то, что в Java называется литералом класса . Литерал класса – это выражение, состоящее из имени класса, интерфейса, массива или примитивного типа, за которым следует .класс . Литерал класса вычисляется как объект Класса для именованного типа.
  • Например, если у вас есть C.class , где C – имя класса. Литерал класса будет преобразован в объект класса типа C, например:
C.class ---evaluates to---> Class

Что такое объект класса и почему он является универсальным?

  • Ну, экземпляры Класса представляют классы и интерфейсы в запущенном приложении Java. Класс не имеет открытого конструктора, вместо этого объекты класса автоматически создаются JVM по мере загрузки классов определенным загрузчиком классов. Хорошо, в этом есть смысл, но почему это универсально? Похоже, это связано с изменениями, внесенными в JDK 5.0, где класс был сделан универсальным, чтобы помочь в моделировании класса, который он представляет. Смотрите фрагмент кода выше для примера.

Зачем использовать литерал класса?

  • Опять же, не уверен на 100%, я видел литералы классов, используемые в JUnit и во всей системе Android. Однако все они, похоже, указывают на Java Reflections API . Который обычно используется программами, которым требуется возможность проверять или изменять поведение приложений во время выполнения, запущенных в виртуальной виртуальной машине. В API отражений конкретно указано, Для каждого типа объекта виртуальная машина Java создает экземпляр неизменяемого экземпляра java.lang. Класс, который предоставляет методы для проверки свойств объекта во время выполнения, включая его члены и информацию о типе .

Резюме

  • Так что в основном в любое время, когда вы видите .класс знать, что используется литерал класса . Литерал класса, являющийся созданием объекта класса любого типа.класс следует. Объекты класса автоматически создаются JVM. Код, использующий синтаксис литерала класса, скорее всего, использует API Reflections, который предоставляет методы для проверки свойств среды выполнения.
  • Спасибо, что нашли время в свой рабочий день, чтобы прочитать этот мой пост в блоге. Если у вас есть какие-либо вопросы или сомнения, пожалуйста, прокомментируйте ниже или свяжитесь со мной по Твиттер .

Быстрые игры на Java (Серия из 13 частей)

Оригинал: “https://dev.to/theplebdev/java-quickie-the-class-syntax-1fib”