Когда мы пишем код в блокноте или любой IDE, вся информация преобразуется в биты в оперативной памяти.
На каком-то этапе все данные на компьютере являются битами в оперативной памяти.
И файл .class после компиляции уже содержит инструкции, которые может понять jvm.Эта информация также уже находится в ОЗУ при создании файла .class.
В ОЗУ ее нет, пока не создан файл класса.Данные в файле класса - это то, что находится в ОЗУ, когда код компилируется.
Так зачем jvm понадобиться специальное пространство памяти в ОЗУ, называемое областью метода для «загрузки данных класса».
Это должно быть где-то, и поскольку у него жизненный цикл, отличный от других типов данных, имеет смысл управлять им по-другому.
Я узнал, что область метода имеетметаданные, относящиеся к классу, который мы выполняем.Но зачем вам больше памяти, когда у нас уже есть информация о файле .class в ОЗУ, когда мы ее запускаем.
Возможно, вам придется распаковать информацию или превратить ее в собственный код для оптимизации.
Это просто для более быстрых вычислений?
Да, каждый раз перечитывать файл .class очень медленно.
Или информация об области метода полностью отличается от того, что я понимаю .?
Хранит информацию, полученную из файлов .class
, а также информацию о том, как используются методы в классе.