Table Comparing C, C++ and java
| Feature | C | C++ | Java |
| Paradigms | Procedural | Procedural, OOP, Generic Programming | OOP, Generic Programming (from Java 5) |
| Form of Compiled Source Code | Executable Native Code | Executable Native Code | Java bytecode |
| Memory management | Manual | Manual | Managed, using a garbage collector |
| Pointers | Yes, very commonly used. | Yes, very commonly used, but some form of references available too. | No pointers; references are used instead. |
| Preprocessor | Yes | Yes | No |
| String Type | Character arrays | Character arrays, objects | Objects |
| Complex Data Types | Structures, unions | Structures, unions, classes | Classes |
| Inheritance | N/A | Multiple class inheritance | Single class inheritance, multiple interface implementation |
| Operator Overloading | N/A | Yes | No |
| Automatic coercions | Yes, with warnings if loss could occur | Yes, with warnings if loss could occur | Not at all if loss could occur; msut cast explicitly |
| Variadic Parameters | Yes | Yes | No |
| Goto Statement | Yes | Yes | No |
No comments:
Post a Comment