Перейти к основному содержимому

6 записей с тегом "Java Bytecode"

Посмотреть все теги

· 5 мин. чтения

1. Обзор

Проще говоря, ByteBuddy — это библиотека для динамического создания классов Java во время выполнения.

В этой статье мы собираемся использовать инфраструктуру для управления существующими классами, создания новых классов по запросу и даже для перехвата вызовов методов.

2. Зависимости

Давайте сначала добавим зависимость в наш проект. Для проектов на основе Maven нам нужно добавить эту зависимость в наш pom.xml :

· 7 мин. чтения

1. Обзор

Анализ байт-кода является обычной практикой среди разработчиков Java по многим причинам, таким как поиск проблем с кодом, профилирование кода и поиск классов с определенными аннотациями.

В этой статье мы рассмотрим способы просмотра байт-кода файла класса в Java.

2. Что такое байт-код?

Байт-код — это промежуточное представление программы Java, позволяющее JVM преобразовывать программу в инструкции по сборке машинного уровня .

· 9 мин. чтения

1. Введение

В этой статье мы рассмотрим, как использовать библиотеку ASM для управления существующим классом Java путем добавления полей, добавления методов и изменения поведения существующих методов.

2. Зависимости

Нам нужно добавить зависимости ASM в наш pom.xml :

<dependency>
<groupId>org.ow2.asm</groupId>
<artifactId>asm</artifactId>
<version>6.0</version>
</dependency>
<dependency>
<groupId>org.ow2.asm</groupId>
<artifactId>asm-util</artifactId>
<version>6.0</version>
</dependency>

· 4 мин. чтения

1. Обзор

JVM использует два различных метода для инициализации экземпляров объектов и классов.

В этой быстрой статье мы увидим, как компилятор и среда выполнения используют методы <init> и <clinit> для целей инициализации.

2. Методы инициализации экземпляра

Начнем с простого выделения и назначения объектов:

· 5 мин. чтения

1. Обзор

В этой статье мы рассмотрим библиотеку cglib (библиотека генерации кода). Это библиотека инструментовки байтов, используемая во многих средах Java, таких как Hibernate или Spring . Инструментарий байт-кода позволяет манипулировать или создавать классы после этапа компиляции программы.

2. Зависимость от Maven

Чтобы использовать cglib в своем проекте, просто добавьте зависимость Maven (последнюю версию можно найти здесь ):

<dependency>
<groupId>cglib</groupId>
<artifactId>cglib</artifactId>
<version>3.2.4</version>
</dependency>

· 4 мин. чтения

1. Обзор

В этой статье мы рассмотрим библиотеку Javasisst (помощник по программированию на Java) .

Проще говоря, эта библиотека упрощает процесс управления байт-кодом Java за счет использования высокоуровневого API, чем в JDK.

2. Зависимость от Maven

Чтобы добавить библиотеку Javassist в наш проект, нам нужно добавить javassist в наш pom: