History of Java Programming Language

0.0(0)
studied byStudied by 0 people
learnLearn
examPractice Test
spaced repetitionSpaced Repetition
heart puzzleMatch
flashcardsFlashcards
Card Sorting

1/35

flashcard set

Earn XP

Description and Tags

Vocabulary flashcards covering Java’s definition, historical milestones, key versions, major language features, notable APIs, and essential terminology drawn from the lecture notes.

Study Analytics
Name
Mastery
Learn
Test
Matching
Spaced

No study sessions yet.

36 Terms

1
New cards

Java

A high-level, object-oriented programming language famous for its cross-platform "Write Once, Run Anywhere" capability.

2
New cards

Object-Oriented Programming (OOP)

A programming paradigm based on the concept of "objects" that contain data and methods; Java is fundamentally OOP.

3
New cards

Write Once, Run Anywhere (WORA)

Java’s principle that compiled code can run on any device with a Java Virtual Machine (JVM).

4
New cards

Java Virtual Machine (JVM)

The engine that runs compiled Java bytecode, providing platform independence and memory management.

5
New cards

James Gosling

Creator of Java; led the Green Project in the early 1990s.

6
New cards

Green Project

Early initiative by Gosling’s team to build a language for digital devices, which eventually produced Java.

7
New cards

Oak

The original name of Java, inspired by the oak tree outside Gosling’s office; renamed because of trademark issues.

8
New cards

Java Development Kit (JDK)

Oracle’s (formerly Sun’s) distribution that provides the tools, compiler, and libraries to develop Java applications.

9
New cards

JDK 1.0

First stable Java version released in January 1996, marking Java 1.

10
New cards

JDK 1.1

1997 release adding inner classes, JavaBeans, JDBC, RMI, and a revamped AWT event model.

11
New cards

J2SE 1.2 (Playground)

1998 release introducing the Swing API, strictfp keyword, Java IDL, Collections Framework, and the first JIT-equipped JVM.

12
New cards

HotSpot JVM

High-performance Java Virtual Machine added in J2SE 1.3, providing adaptive optimization.

13
New cards

Swing

Java’s GUI toolkit integrated in J2SE 1.2 for building platform-independent desktop interfaces.

14
New cards

Abstract Window Toolkit (AWT)

Original Java GUI library; its event model was overhauled in JDK 1.1.

15
New cards

JavaBeans

Reusable, component-based software units introduced in JDK 1.1.

16
New cards

Java Database Connectivity (JDBC)

API enabling Java programs to interact with relational databases; first appeared in JDK 1.1 and upgraded in Java SE 6 (JDBC 4.0).

17
New cards

Remote Method Invocation (RMI)

Mechanism allowing Java objects to invoke methods across JVMs; added in JDK 1.1.

18
New cards

Collections Framework

Unified architecture for storing and manipulating data, introduced in J2SE 1.2.

19
New cards

Generics

Type-safe containers and methods added in J2SE 5.0 (Tiger).

20
New cards

Enhanced for-each loop

Simplified array/collection iteration feature introduced in J2SE 5.0.

21
New cards

Autoboxing / Unboxing

Automatic conversion between primitive types and their wrapper classes, introduced in J2SE 5.0.

22
New cards

Var-args

Syntax allowing a method to accept an arbitrary number of arguments, added in J2SE 5.0.

23
New cards

Java SE 6 (Mustang)

2006 release that packaged a database, improved scripting support, and upgraded JAXB and annotations.

24
New cards

Java SE 7 (Dolphin)

2011 release adding strings in switch, binary literals, compressed 64-bit pointers, and JVM support for dynamic languages.

25
New cards

Lambda Expressions

Functional-style code blocks added in Java SE 8 for more concise behavior-passing.

26
New cards

Date and Time API

Modern time handling library inspired by Joda-Time, introduced in Java SE 8.

27
New cards

Project Jigsaw

Modularization of the Java platform delivered in Java SE 9 (2017).

28
New cards

Switch Expressions

Enhanced switch syntax introduced as a preview in Java SE 12 and finalized later.

29
New cards

Text Blocks

Multiline string literals added in Java SE 13 for easier embedding of large text.

30
New cards

Records

Concise, immutable data-carrier classes introduced in preview (Java SE 14) and finalized in later releases.

31
New cards

Pattern Matching

Language feature simplifying type checks—first for instanceof (Java SE 14) and later for switch.

32
New cards

Sealed Classes

Classes that restrict which other classes may extend them; previewed in Java SE 15 and finalized in Java SE 17.

33
New cards

Epsilon Garbage Collector

No-op garbage collector for performance testing, added in Java SE 11.

34
New cards

Shenandoah Garbage Collector

Low-pause-time GC introduced experimentally in Java SE 12.

35
New cards

Class Declaration

The Java syntax that names a class and its modifiers, e.g., "public class MyClass { … }".

36
New cards

Class Body

The section enclosed in braces { } containing fields, methods, constructors, and nested types of a Java class.