Сегодня я компилирую класс в байт-код и ничего не могу найти в индексе таблицы локальных переменных основного метода 0, он начинается с 1, я знаю нестатичный c метод, начинающийся с 1, потому что это «это» в 0.
Вот байт-код.
// this is the main method
public static void main(java.lang.String[]);
Code:
0: iconst_1
1: istore_1 // index: 1 (what is content at index 0 ?)
2: iconst_2
3: istore_2
4: return
// this is a static method
public static void staticMethod();
Code:
0: iconst_1
1: istore_0 // index: 0 (no 'this')
2: iconst_2
3: istore_1
4: return
// this is a non-static method
public void nonStaticMethod();
Code:
0: iconst_1
1: istore_1 // index: 1 (index 0 should be 'this')
2: iconst_1
3: istore_2
4: return
Помогите мне, пожалуйста, спасибо!