Я знаю, что Java-язык компилятивного программирования не является одним и тем же, что и Java-by-encode-format-for-JVM-исполнение. Есть примеры вещей, которые действительны в формате .class, но не в исходном коде .java, таких как классы без конструктора и синтетические методы.
-
Если мы создадим файл .class с зарезервированным ключевым словом Java (например,
int
,while
) в качестве класса, метода или имени поля, виртуальная машина Java примет его для загрузки -
Если класс загружен, означает ли это, что единственный способ доступа к этому классу или члену - через отражение Java, потому что это имя является синтаксически незаконным на языке программирования Java?