Не читай тупые книги. Автор сей гoвностатейки Картузов - сам не понимает того, чего пишет.
Языки разные, у них разные подходы, и напрямую сравнивать их - неправильно.
Заголовки в Java не являются обязательными, так как в этом языке используется автоматическое управление памятью. В отличие от C/C++, Java имеет сборщик мусора, который освобождает память от неиспользуемых объектов, поэтому заголовки не нужны для управления памятью.