1. Java has no pre-processing instructions. (Such as #define, #include, #ifdef, etc.) in C. Constant in C is defined in Java to replace with Static Final.
2. There is no global variable in C in Java.
3. The primary type of the primary type in Java is determined, while C Case-type Size is related to the platform.
4. There is no pointer in Java, which uses a similar handle to replace the pointer, but the handle is not allowed to be subjected to the handle, and the address operator is not allowed.
5. Java has a garbage collection mechanism and does not need to release space yourself.
6. Java has no goto statement. Java adds an exception handling and label Break and Contin, on a control statement provided by C. These can replace GOTO role.
7. C Requires all local variables used in one method or block definitions at the beginning of the method or block, while Java allows these definitions to appear in any way in the method or block.
8. Java does not require that the function has been defined before calling a function, can be defined later in the call point. And C has this requirement.
9. Java does not support the Strut and Union types in C. Java support method overload.
10. Java does not support ENUM keywords in C.
11. Java does not support bitfields in C.
12. Java does not support C's TypeDef.
13. Java does not support C method pointers.
14. Java does not support the variable parameter table of C.