Из Википедии, бесплатной энциклопедии
Перейти к навигации Перейти к поиску

Javassist ( помощник по программированию на Java ) - это библиотека Java, предоставляющая средства для управления байт-кодом Java приложения. [1] В этом смысле Javassist обеспечивает поддержку структурного отражения , то есть способность изменять реализацию в виде класса на время выполнения .

Манипуляции с байт-кодом выполняются во время загрузки с помощью предоставленного загрузчика классов .

Javassist позволяет программам Java определять новый класс во время выполнения и изменять файл класса, когда JVM загружает его. В отличие от других подобных редакторов байт-кода, Javassist предоставляет два уровня API: уровень исходного кода и уровень байт-кода. Используя API уровня исходного кода, программисты могут редактировать файл класса, не зная спецификаций байт-кода Java; весь API разработан только с использованием словаря языка Java. Программисты могут даже указать вставленный байт-код в виде исходного текста Java; Javassist компилирует его на лету. С другой стороны, API уровня байт-кода позволяет пользователям напрямую редактировать файл класса, как и другие редакторы.

Использует [ редактировать ]

Javassist можно использовать для следующих целей:

  • Для указания байт-кода с использованием исходного кода - можно скомпилировать фрагмент исходного текста в Интернете (например, только один оператор)
  • Для аспектно-ориентированного программирования (АОП) - может вводить новые методы в класс и вставлять рекомендации до / после / вокруг как на вызывающей, так и на вызываемой сторонах.
  • Для отражения во время выполнения - можно использовать метаобъект, который управляет вызовами методов для объектов базового уровня.
  • Для вызова удаленного метода - может вызывать метод удаленного объекта, работающего на веб-сервере, альтернатива Java RMI , которому не нужен компилятор-заглушка, такой как rmic

См. Также [ править ]

Ссылки [ править ]

  1. ^ "Javassist" . Сообщество JBoss.

Внешние ссылки [ править ]

Официальный веб-сайт