1.c++ introduces an object-oriented concept, although it is not a purely object-oriented language.
2. Later Java came out, equally shocked the world, ah, purely object-oriented, and not like C + + as well as retaining a bit of process-oriented thinking. Because of its cross-platform reasons, Java's operating mechanism and other languages, the introduction of the concept of virtual machine, it is not a compiled language and is not an interpreted language, but in the middle, he compiled the source code into the so-called bytecode, the virtual machine is responsible for interpreting and then communicate and execute with the local operating system, It can be said that his compilation is for virtual machines, rather than a specific machine, which is clearly different from C and other compiled languages. Java, of course, cancels the concept of pointers inside C + +, reducing the burden on programmers.
The difference between C + + and Java