Intellij IDEA: Memory view



Как в IDEA посмотреть количество объектов в памяти?



По умолчанию подсчёт объектов при дебаге выключен, потому что это тяжелая операция и сильно тормозит процесс отладки.



Чтобы включить:

1️⃣ В окне Debug найдите вкладку Memory View.

2️⃣ Нажмите на шестерёнку в Memory View и выберите

Update Loaded Classes On Debugger Stop



Картинка с инструкцией внизу⬇️



Что показывает:

🔸Count - количество экземпляров

🔸Diff - изменения с прошлого шага



При каждой остановке информация о количестве объектов обновляется.



Так можно наглядно посмотреть на работу String pool. Помните, был вопрос:



Сколько строк создаётся в конструкции:

String s = new String("Java");



Откроем Memory View. После выполнения строки напротив класса java.lang.String увидим Diff +2.



Поменяем код на

String java = "Java";

String s = new String("Java");



Запустим снова. "Java" в первой строке отправилась в String pool. Теперь после выполнения второй строки напротив java.lang.String будет Diff +1.