В недавнем вопросе, который был задан недавно, мой простой мысленный ответ выявил многие из моих заблуждений о Java, JVM и том, как код компилируется и запускается. Это создало желание во мне понять мое понимание на более низком уровне. У меня нет проблем с пониманием низкого уровня, как сборка, как когда-либо байт-код, и JVM меня пугает. То, как объектно-ориентированный код разбивается на низком уровне, потерян для меня. Мне было интересно, есть ли у кого-нибудь предложения о том, как узнать о JVM, байт-коде и функциях Java на более низком уровне. Существуют ли какие-либо утилиты, которые позволяют писать и запускать байт-код напрямую, поскольку я считаю, что опыт работы с чем-то - лучший способ вырасти в понимании этого? Кроме того, будут оценены и предложения по чтению по этой теме.
Изменить: вторичный вопрос. Итак, у меня есть какой-то дополнительный вопрос, ответы дали мне интересную идею, чтобы узнать о jvm, что бы правдоподобность написания действительно простого языка, такого как brainf ** k или Ook, только в читаемом синтаксисе (может быть, я даже мог его развить для поддержки oo в конечном итоге), который компилируется в байт-код? Будет ли это хорошим опытом обучения?