Related Comparisons

Edit this comparison chart


Java (programming language)

Designed by Bjarne Stroustrup James Gosling and Sun Microsystems
Typing Discipline Static, Strong, Unsafe, Nominative Static, strong, safe, nominative, manifest
Influenced Ada 95, C#, Java, PHP, D, Aikido Ada 2005, BeanShell, C#, Clojure, D, ECMAScript, Groovy, J#, Javascript, PHP, Python, Scala, Seed7, Vala
Paradigms Multi-paradigm, Object-Oriented, Generic, Procedural, Functional, Meta Multi-paradigm: object-oriented, structured, imperative, generic, reflective, concurrent
Appeared in 1985 1995
Major Implementations GNU Compiler Collection, Microsoft Visual C++, Borland C++ Builder, Intel C++ Compiler, LLVM/Clang OpenJDK, many others
Influenced by C, Simula, Ada 83, ALGOL 68, CLU, ML Ada 83, C++, C#, Eiffel, Generic Java, Mesa, Modula-3, Oberon, Objective-C, UCSD Pascal, Smalltalk
Garbage Collection No GC available on the C++ standard library (STD). However, STD provides efficient and deterministic ways to manage resource such as object ownership and reference counting. Yes
Usual filename extensions .cc, .cpp, .cxx, .h, .hh, .hpp .java, .class, .jar, .war
Object-oriented Yes Yes
Programming-include #include import
Generic Programming Yes Yes
Speed +-5% when compared with C if you know how to make a good use of C++. The performance of C++ and C programs can often be equal, since compilers for both languages are mature. slower than C++
Procedural Programming Yes Yes
Functional Programming Partial No
Statement terminators ; ;
Metaprogramming Yes No
Reflection No Yes
code Compiled to native binary executable files compiled to bytecode
Inline comments delimiter // //
Block comments delimiter /* and */ /* and */
Developed by Bjarne Stroustrup Oracle Corporation
Multidimensional arrays supported Yes Yes
Arrays dynamically sized No No
Platform Any that has a compiler Mac, Windows, Linux, Android; any platform that supports JVM

Add content for C++ vs. Java (programming language) or review and improve the comparison table above.