Вы путаете различные типы утечек памяти здесь.
Грозные утечки памяти, основанные на явном управлении памятью, исчезли в Java (или любом другом языке, основанном на GC).Эти утечки вызваны полной потерей доступа к частям памяти, не помечая их как неиспользуемые.
«Утечки памяти» все еще присутствуют в Java и на всех других языках на планете, пока компьютер не сможет читать наши мысливсе еще с нами, и будет в обозримом будущем.Эти утечки вызваны тем, что код / программист хранит ссылки на объекты, которые технически больше не нужны.Это в основном логические ошибки, и их нельзя предотвратить ни на одном языке с использованием современных технологий.