Стек и куча обычно не содержат исполняемый код: ни байт, ни собственный код. Они содержат только данные (локальные переменные и параметры в стеке, объекты в куче).
Область метода содержит структуры внутреннего контроля JVM. Информация о загруженных классах, методах и т. Д. Это, вероятно, будет содержать байт-код каждого метода. Он может также очень хорошо содержать скомпилированный (собственный) код некоторых методов (или меньших / больших частей), что зависит от того, какую оптимизацию выполняет JVM.