
Синтаксически языки C++ и Java близки. Создатели Java сделали это намеренно, чтобы разработчикам, пишущим на C++, было проще изучать Java. В остальном же Java и C++ различаются по ряду параметров, что по большей части связано с назначением этих языков. В языке Java во главу угла поставлены безопасность, переносимость и простота, в то время как в C++ упор делался на производительность, обратную совместимость с С и управляемость.
Java компилируется в виртуальный машинный байт-код и требует для запуска виртуальной машины; C++ компилируется в машинный код. Благодаря этому у Java больший потенциал в таких аспектах, как переносимость и безопасность.
В первом приближении язык C++ является расширением языка С и поддерживает такие механизмы, как программно-контролируемое управление памятью, указатели и препроцессор, обеспечивающий обратную совместимость с языком С. Напротив, язык Java избавлен от этих и других механизмов, использование которых чревато ошибками. Программное освобождение памяти в Java заменено сборкой мусора. Обходится Java и без таких принятых в C++ приемов, как перегрузка операторов и множественное наследование. Благодаря этому некоторые считают, что язык Java лучше подходит для ускоренной разработки, а также для проектов, в которых важны переносимость и безопасность.
Читайте также: Новости России и мира.