Как изменить class файл java

Аватар пользователя Игорь Черкасов
Игорь Черкасов
30 ноября 2022

Исходный код, написанный на Java и сохраненный в файл с расширением .java, с помощью компилятора Javac компилируется в байт-код и сохраняется в двоичный файл с расширением .class для дальнейшего запуска на JVM (Java Virtual Machine).

Это исходный код Java в файле с расширением .java

public class MainClass {
    public static void main(String[] args) {
        System.out.println("Hello world!");
    }
}

Это скомпилированный исходный код компилятором Javac и сохраненный в файл с расширением .class:

˾ھ   = "
      java/lang/Object <init> ()V      
   java/lang/System out Ljava/io/PrintStream;  Hello world!
      java/io/PrintStream println (Ljava/lang/String;)V     MainClass Code LineNumberTable LocalVariableTable this LMainClass; main ([Ljava/lang/String;)V args [Ljava/lang/String; 
SourceFile MainClass.java !               /     *נѠ                                 7      Ҡ
֠Ѡ      
                            !

Поэтому внесение изменений необходимо делать в исходном коде Java, т.е. в файле с расширением .java. После этого необходимо заново скомпилировать измененный код, чтобы внесенные изменения отразились в байт-коде и были сохранены в файл с расширением .class.

0 0
Аватар пользователя Никита Сысоев
Никита Сысоев
06 октября 2022

В Java class файл представляет из себя файл с байт-кодом. Для его изменения достаточно внести изменение в исходный код, а затем скомпилировать его. Это можно сделать в среде разработки, нажав на зеленый треугольник, или вручную, запустив приложение-компилятор.

// Компилируем измененный файл с исходным кодом
javac Main.java

Появится файл с именем Main.class. Этот файл представляет из себя байт-код, сгенерированный компилятором. Запускаем этот файл, т.е. нашу программу, внутри JVM.

java Main

0 0
Познакомьтесь с основами Java бесплатно

Похожие вопросы