1. Pada Java, manajemen memory dinamis dan pointer dilakukan secara otomatis. Pada C++ pemrograman melakukan sendiri alokasi dan dealokasi memory. Otomatisasi ini menghilangkan kemungkinan bagi penggunaan pointer yang dapat merusak kestabilan program dan system operasi. 2. Bahasa Java memperbolehkan tanda [ ] ditulis didepan atau dibelakang nama array, sedangkan dalam C++ tanda tersebut harus ditulis dibelakang nama array 3. Java tidak mengenal multiple inheritance seperti pada C/C++. Multiple Inheritance membingungkan dan berakibat pada sulitnya pembuatan aplikasi dan compiler. Sebagai ganti yang lebih baik, Java menggunakan interface. 4. Java merupakan bahasa OOP murni sedangkan C++ adalah bahasa OOP hybrid. 5. Java menggunakan model Exception dalam menangani kesalahan program. 6. Java tidak mempergunakan compiler-directive pada source code. 7. Java memiliki fasilitas garbage-collector yang bekerja secara otomatis untuk menjamin ketersediaan memori dengan membebaskan memori yang tidak terpakai. 8. Java sangat portable baik pada file sumbernya maupun hasil kompilasinya, sedangkan C+ + hanya portable pada level kode sumbernya saja. 9. Spesifikasi bahasa dan implementasi Java sudah ditetapkan dan tidak mengikuti suatu mesin atau platform tertentu, C++ sangat tergantung pada mesin dan platform yang akan digunakan. 10. Dalam C++ kita menggunakan /* . . . . . . */ dan // untuk membuat sebuah komentar program begitu juga dengan bahasa java menggunakan code /* . . . . . . . */ yang merupakan gaya penulisan dalam C++ yang digunakan untuk komentar dengan banyak baris, sedangkan // untuk satu baris komentar.