В Java, если вы попытаетесь переопределить открытый метод с помощью защищенного метода (или любого другого сокращения доступа), вы получите ошибку: «попытка назначить более слабые права доступа». Если вы делаете это с помощью байт-кода JVM, то с верификатором все в порядке, и вы можете вызывать эти методы через родительский класс, как если бы они были публичными.

твуют ли в настоящее время (Java 6) вещи, которые вы можете сделать в байт-коде Java, которые вы не можете сделать из языка Java?

Я знаю, что оба Тьюринга завершены, поэтому читать «можно сделать», как «можно сделать значительно быстрее / лучше, или просто по-другому».

Я думаю о дополнительных байт-кодах, таких какinvokedynamic, который не может быть сгенерирован с использованием Java, за исключением того, что этот предназначен для будущей версии.

Ответы на вопрос(9)

Ваш ответ на вопрос