Java
Object-oriented, class-based. First appeared 1995; managed runtimes; enterprise services, android.
Record¶
| First appeared | 1995 |
|---|---|
| Family | Managed runtimes |
| Paradigm emphasis | Object-oriented, class-based |
| Typing | Static, strong |
| Memory | Tracing GC |
| Execution | Bytecode + JIT |
| Primary domain | Enterprise services, Android |
| Designers | James Gosling, Sun Microsystems |
| Reference | https://docs.oracle.com/javase/specs/ |
| Last verified | not yet checked against its source by a human |
Dates are first public release or publication, not the start of internal development. Colour on the typing and memory tags encodes kind, never rank.
Influence¶
Within the Managed runtimes¶
Languages targeting a shared virtual machine and inheriting its collector, threading model, and library surface.
| Language | First appeared | Typing | Memory | Execution |
|---|---|---|---|---|
| C# | 2000 | Static, strong, partly inferred | Tracing GC | Bytecode + JIT/AOT |
| Scala | 2004 | Static, strong, inferred | Tracing GC (JVM) | Bytecode + JIT |
| Kotlin | 2011 | Static, strong, inferred | Tracing GC (JVM) | Bytecode + JIT, native AOT |
3 other languages in this family, ordered by first appearance. Java itself is omitted. Source: languages.json.