1/35
Vocabulary flashcards covering Java’s definition, historical milestones, key versions, major language features, notable APIs, and essential terminology drawn from the lecture notes.
Name | Mastery | Learn | Test | Matching | Spaced |
---|
No study sessions yet.
Java
A high-level, object-oriented programming language famous for its cross-platform "Write Once, Run Anywhere" capability.
Object-Oriented Programming (OOP)
A programming paradigm based on the concept of "objects" that contain data and methods; Java is fundamentally OOP.
Write Once, Run Anywhere (WORA)
Java’s principle that compiled code can run on any device with a Java Virtual Machine (JVM).
Java Virtual Machine (JVM)
The engine that runs compiled Java bytecode, providing platform independence and memory management.
James Gosling
Creator of Java; led the Green Project in the early 1990s.
Green Project
Early initiative by Gosling’s team to build a language for digital devices, which eventually produced Java.
Oak
The original name of Java, inspired by the oak tree outside Gosling’s office; renamed because of trademark issues.
Java Development Kit (JDK)
Oracle’s (formerly Sun’s) distribution that provides the tools, compiler, and libraries to develop Java applications.
JDK 1.0
First stable Java version released in January 1996, marking Java 1.
JDK 1.1
1997 release adding inner classes, JavaBeans, JDBC, RMI, and a revamped AWT event model.
J2SE 1.2 (Playground)
1998 release introducing the Swing API, strictfp keyword, Java IDL, Collections Framework, and the first JIT-equipped JVM.
HotSpot JVM
High-performance Java Virtual Machine added in J2SE 1.3, providing adaptive optimization.
Swing
Java’s GUI toolkit integrated in J2SE 1.2 for building platform-independent desktop interfaces.
Abstract Window Toolkit (AWT)
Original Java GUI library; its event model was overhauled in JDK 1.1.
JavaBeans
Reusable, component-based software units introduced in JDK 1.1.
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).
Remote Method Invocation (RMI)
Mechanism allowing Java objects to invoke methods across JVMs; added in JDK 1.1.
Collections Framework
Unified architecture for storing and manipulating data, introduced in J2SE 1.2.
Generics
Type-safe containers and methods added in J2SE 5.0 (Tiger).
Enhanced for-each loop
Simplified array/collection iteration feature introduced in J2SE 5.0.
Autoboxing / Unboxing
Automatic conversion between primitive types and their wrapper classes, introduced in J2SE 5.0.
Var-args
Syntax allowing a method to accept an arbitrary number of arguments, added in J2SE 5.0.
Java SE 6 (Mustang)
2006 release that packaged a database, improved scripting support, and upgraded JAXB and annotations.
Java SE 7 (Dolphin)
2011 release adding strings in switch, binary literals, compressed 64-bit pointers, and JVM support for dynamic languages.
Lambda Expressions
Functional-style code blocks added in Java SE 8 for more concise behavior-passing.
Date and Time API
Modern time handling library inspired by Joda-Time, introduced in Java SE 8.
Project Jigsaw
Modularization of the Java platform delivered in Java SE 9 (2017).
Switch Expressions
Enhanced switch syntax introduced as a preview in Java SE 12 and finalized later.
Text Blocks
Multiline string literals added in Java SE 13 for easier embedding of large text.
Records
Concise, immutable data-carrier classes introduced in preview (Java SE 14) and finalized in later releases.
Pattern Matching
Language feature simplifying type checks—first for instanceof (Java SE 14) and later for switch.
Sealed Classes
Classes that restrict which other classes may extend them; previewed in Java SE 15 and finalized in Java SE 17.
Epsilon Garbage Collector
No-op garbage collector for performance testing, added in Java SE 11.
Shenandoah Garbage Collector
Low-pause-time GC introduced experimentally in Java SE 12.
Class Declaration
The Java syntax that names a class and its modifiers, e.g., "public class MyClass { … }".
Class Body
The section enclosed in braces { } containing fields, methods, constructors, and nested types of a Java class.