Java is a strongly- and statically-typed procedural, garbage-collected _(object-oriented) *(programming language) with C's syntax released by Sun Microsystems as a platform for hardware-independent applications, but only in a very limited sense. Jave started as an in-house development tool by Gosling named Oak for the various Sun-supported platforms.

The downfall is that Java was built using _(Smalltalk) and _(Self) compiler technology, but is a less-expressive language, and requires interface signature dependencies that break the encapsulation promised by object-orientation. In particular, not all elements of Java are objects, including classes, literals, arrays, etc. In particular, only recently has genericity been introduced in even common extensions. However, a lot of research is performed in Java because of the money behind it, so we cannot fully ignore it.

<ul class="links">
<li>_(Sun's home for Java|http://java.sun.com).
</ul>
<ul class="implementations">
<li>See the _(JVM)s.
</ul>