1/128
Looks like no tags are added yet.
Name | Mastery | Learn | Test | Matching | Spaced | Call with Kai |
|---|
No analytics yet
Send a link to your students to track their progress
Primitive Type
Basic data types like int, float, char, and boolean that store simple values directly in memory.
Reference Type
Data types that refer to objects (e.g., arrays, classes) and store memory addresses, not actual values.
Runtime Heap
Memory area where objects are dynamically allocated during runtime.
Runtime Stack
Memory structure that keeps track of method calls, including local variables and method invocations.
Activation Record (Stack Frame)
Represents a single method call in the runtime stack, containing its local variables and return address.
Call by Value
Passing a copy of the variable's value to a method. Changes in the method don't affect the original variable.
Call by Reference
Passing a reference (address) to the variable, allowing modifications within the method to affect the original object.
Method Abstraction
Hides the implementation details of a method, focusing on its purpose or usage.
Method Header
The declaration line of a method (e.g., public void myMethod(int x)).
Method Body
The code block inside a method that defines its functionality.
Method Signature
Includes the method's name and parameter list; used to identify the method uniquely.
Formal Parameter
Variables listed in the method's header.
Actual Parameter/Argument
Values or expressions passed to the method during a call.
Java Virtual Machine (JVM)
Executes Java bytecode, providing platform independence.
.java (Source File)
File containing Java source code.
.class (Bytecode)
Compiled Java code, executed by the JVM.
Bytecode
Intermediate, platform-independent code generated by the Java compiler.
Flushing
Forcing the output buffer to write its contents to the destination (e.g., System.out.flush()).
GPS / Driver / Car Analogy
Explains abstraction, encapsulation, and modularity (e.g., user interacts with GPS without knowing internals).
User / Application / Computer
Highlights the layered interaction of software and hardware.
Compiler (javac)
Translates Java source code into bytecode.
Operating System
The platform running the JVM (e.g., Windows, Linux, macOS).
Hardware
The physical machine executing the JVM and application.
JDK (Java Development Kit)
Includes tools like compiler, libraries, and JVM for developing Java applications.
SDK (Software Development Kit)
A set of tools for building software in a specific environment.
Block
A set of code enclosed in braces {}.
Access Modifiers
Control visibility (public, protected, default, private).
Return Statement
Specifies the output of a method and ends its execution.
Assertions
Used for debugging to validate assumptions (assert x > 0).
Test Harness
Framework to test software components in isolation.
Void
Indicates a method doesn't return a value.
Unit Testing
Testing individual components or methods.
Stub
A minimal implementation used for testing.
Modular Development
Dividing software into independent, reusable modules.
Incremental Development
Building and testing software in small, manageable increments.
Testbench
Simulates inputs/outputs to test code.
Test Vector
Set of inputs and expected outputs for testing.
Assert Operator
Used in assertions to verify conditions.
Class
A blueprint for objects, defining fields (properties) and methods.
Object
An instance of a class, combining data and behavior.
Encapsulation
Hiding internal details and exposing only what's necessary via getters/setters.
Getter/Setter (Mutator/Accessor)
Methods to read/write object fields.
Overloading
Multiple methods with the same name but different parameter lists.
Overriding
Redefining a method in a subclass.
This
A reference to the current object.
Inheritance
Subclasses inheriting behavior and properties from a superclass.
Polymorphism
The ability to process objects of different types through a common interface.
UML Class Diagram
Visual representation of classes, relationships, and structure.
ArrayList vs. Array
ArrayList is dynamic; arrays have fixed size.
Perfect Size Array
An array sized to exactly fit its elements.
Oversize Array
An array with extra capacity to avoid resizing.
PrintStream
Writes data to an output destination.
Buffer
Temporary storage area for data.
System.out
Default output stream.
InputStream
Reads data from a source.
PrintWriter
Writes formatted output to text files.
FileInputStream/FileOutputStream
Reads/writes binary data from/to files.
Try/Catch Block
Handles runtime exceptions.
Throw Statement
Explicitly throws an exception.
Throws
Declares exceptions a method can throw.
Finally Block
Executes code regardless of whether an exception occurred.
Checked vs. Unchecked Exceptions
Checked (compile-time); Unchecked (runtime).
Wrapper Classes
Convert primitives to objects (e.g., Integer for int).
Autoboxing/Unboxing
Automatic conversion between primitives and wrappers.
Static
Indicates one copy of a variable/method exists for all instances.
Instance Method
A method that operates on an object instance.
Deep Copy
Deep copy duplicates all fields
Garbage Collection
Automatic memory management by JVM.
Java Collections Framework
Classes and interfaces for data structures.
Constructor Chaining
Calling one constructor from another in the same class.
GUIs (Graphical User Interfaces)
Visual interfaces for users to interact with the application.
Application
A base JavaFX class that must be extended to create a JavaFX program. The start(Stage primaryStage) method is overridden to define the main UI.
Stage
Represents the primary window or a secondary window in a JavaFX application. is a top level container that contains all content within a window (exit button, maximize, minimize)
Scene
Represents the content inside a Stage. It can contain a hierarchical arrangement of nodes.
Pane
A base class for layout managers (e.g., GridPane, VBox, HBox) used to arrange UI components.
TextField
A GUI component for text input.
Button
A clickable UI component that can trigger actions.
Label
Displays non-editable text or content in the GUI.
GridPane
A layout that arranges components in a grid of rows and columns.
ActionEvent
Represents an event triggered by user interaction, such as clicking a button.
EventHandler
An interface for handling events, often implemented via lambda expressions.
Alerts
Predefined pop-ups for showing messages, warnings, or errors.
AlertType(s)
Enum defining the types of alerts (INFORMATION, WARNING, ERROR, etc.).
Canvas
A node for drawing custom graphics via the GraphicsContext.
GraphicsContext
Provides methods for drawing shapes, images, and text on a Canvas.
VBox
Places the nodes in a single column
Hbox
Places the nodes in a single row
BorderPane
Places the nodes in the top, right, bottom, left, and center regions.
StackPane
JavaFX pane that automatically centers children and lays them out by setting one on top of another.
GridPane
a JavaFX Pane component that positions graphical components in a two-dimensional grid
Dynamic binding
type of object is not determined until run-time
Method Binding
the process of matching a method call with the correct method
API (Application Programming Interface)
Software definition that describes operating system calls for application software; conventions defining how a service is invoked.
Shallow Copy
Creating a copy of an object by copying only the data members' values
String Buffer
Class used to create + manipulate mutable strings (is sync'd + used for multi thread enviroments)
Mouse Listener
an interface used to handle mouse motion event; i.e. when the mouse is moved or dragged within a computer
Lambda Expression
shorthand notation for writing anonymous methods (i.e. methods that don't have a name)
JavaFx
a set of packages and APIs for developing programs with graphical user interfaces, 3D graphics, etc
Interning
refers to the process of storing only one copy of each distinct string value in memory
Concrete
isn't abstract + can be instantiated