Skip to main content

15 docs tagged with "concept"

View all tags

Abstraction

Hide complexity behind a clean contract — when to use abstract classes vs. interfaces, default methods, and the design forces that govern the choice.

Arrays

Single and multi-dimensional arrays, creation, initialization, traversal, and the Arrays utility class.

Classes & Objects

Understand Java classes as blueprints and objects as runtime instances — fields, methods, constructors, and the `this` keyword.

Control Flow

if/else, switch expressions, for, while, do-while, break, continue — directing program execution in Java.

Encapsulation

Hide internal state behind a controlled interface — access modifiers, getters/setters, and the art of designing immutable classes.

Inheritance

Extend classes with `extends`, override behavior with `@Override`, use `super` for parent delegation, and learn when inheritance causes more harm than good.

Methods

Method signatures, overloading, varargs, pass-by-value semantics, and recursion in Java.

Operators & Expressions

Arithmetic, relational, logical, bitwise, ternary, and instanceof operators — how Java evaluates expressions.

Packages & Imports

Package structure, the import statement, the classpath, access modifiers, and how Java locates classes.

Polymorphism

Compile-time (overloading) vs. runtime (overriding) dispatch — how Java decides which method to call and why this is the foundation of flexible design.

Records (Java 16+)

Java's concise immutable data carrier — understand what records generate automatically, compact constructors, and when records replace traditional value classes.

Sealed Classes (Java 17+)

Restrict which classes can extend or implement a type — enabling exhaustive pattern matching and modeling closed, well-known type hierarchies safely.

Strings

String immutability, the string pool, StringBuilder, and the most useful String APIs in Java.

Type Conversion

How Java converts values between types — widening, narrowing, implicit promotion, and explicit casting.

Variables & Data Types

The 8 primitive types, reference types, literals, constants, and the final keyword in Java.