# Java glossary: Journeyman level

57 Java terms at the Journeyman level, each with a short definition and a link to its full page.

Updated: October 16, 2026

[Study these as flash cards](https://www.ask-codey.com/decks/java/journeyman)

- [Aggregation](https://www.ask-codey.com/glossary/aggregation): A relationship where one object uses another object that can exist independently.
- [Annotation](https://www.ask-codey.com/glossary/annotation): A way of  marking a method so that the runtime knows to use it a certain way..
- [Assertion](https://www.ask-codey.com/glossary/assertion): A development-time check that reports when an expected condition is false.
- [AssertJ](https://www.ask-codey.com/glossary/assertj): A Java library that gives Java fluent, readable assertions.
- [Association](https://www.ask-codey.com/glossary/association): A general relationship in which objects know about or work with one another.
- [Buffered Reader](https://www.ask-codey.com/glossary/buffered-reader): A reader that buffers characters so text can be read efficiently.
- [catch Block](https://www.ask-codey.com/glossary/catch-block): A block that handles a matching exception from its try block.
- [Checked Exception](https://www.ask-codey.com/glossary/checked-exception): An exception the compiler requires code to catch or declare.
- [Composition](https://www.ask-codey.com/glossary/composition): Building a class from other objects that handle parts of its work.
- [Constructor](https://www.ask-codey.com/glossary/constructor): Special class code that initializes a new object.
- [Constructor Chaining](https://www.ask-codey.com/glossary/constructor-chaining): Calling another constructor so initialization logic can be reused.
- [Custom Exception](https://www.ask-codey.com/glossary/custom-exception-java): An application-specific exception type created by extending an exception class.
- [Default Constructor](https://www.ask-codey.com/glossary/default-constructor): A no-argument constructor supplied by the compiler when a class declares none.
- [Default Method](https://www.ask-codey.com/glossary/default-method): An interface method with an implementation inherited by implementing classes.
- [Dynamic Dispatch](https://www.ask-codey.com/glossary/dynamic-dispatch): Choosing an overridden instance method at runtime from the object's actual class.
- [Encapsulation](https://www.ask-codey.com/glossary/encapsulation-java): Keeping an object's data behind methods that control how it is read or changed.
- [Exception](https://www.ask-codey.com/glossary/exception-java): An object describing a problem that interrupts normal program flow.
- [Exception Handling](https://www.ask-codey.com/glossary/exception-handling): Using try, catch, and related statements to respond to failures.
- [Field](https://www.ask-codey.com/glossary/field): A variable declared in a class and stored with an object or the class itself.
- [File](https://www.ask-codey.com/glossary/file): A filesystem path together with operations for inspecting or managing it.
- [File Input/Output](https://www.ask-codey.com/glossary/file-input-output): Reading data from files and writing data to files.
- [finally Block](https://www.ask-codey.com/glossary/finally-block): A block that normally runs after try and catch whether an exception occurred or not.
- [Getter](https://www.ask-codey.com/glossary/getter): A method that returns an object's stored value.
- [hashCode()](https://www.ask-codey.com/glossary/hashcode): A method that produces an integer used by hash-based collections.
- [Inheritance](https://www.ask-codey.com/glossary/inheritance-java): Creating a class that receives accessible members from another class.
- [Instance](https://www.ask-codey.com/glossary/instance-java): A particular object created from a class.
- [instanceof](https://www.ask-codey.com/glossary/instanceof): An operator that tests whether an object is compatible with a given type.
- [Interface](https://www.ask-codey.com/glossary/interface): A contract describing behavior that implementing classes agree to provide.
- [java.nio.file](https://www.ask-codey.com/glossary/java-nio-file): The package containing modern APIs for paths, files, directories, and file operations.
- [Method Overriding](https://www.ask-codey.com/glossary/method-overriding-java): Providing a subclass version of an inherited instance method.
- [Mockito](https://www.ask-codey.com/glossary/mockito): The standard Java library for mocking objects for unit tests.
- [Multiple Inheritance](https://www.ask-codey.com/glossary/multiple-inheritance): Inheriting from more than one parent type, supported in Java through interfaces rather than classes.
- [new Keyword](https://www.ask-codey.com/glossary/new-keyword): An operator that creates an object or array and returns its reference.
- [Object](https://www.ask-codey.com/glossary/object): A class instance that combines its own state with available behavior.
- [Object Class](https://www.ask-codey.com/glossary/object-class): The root class from which every Java class ultimately inherits.
- [Object Equality](https://www.ask-codey.com/glossary/object-equality): The rules that decide when two objects should count as having the same value.
- [Package-Private Access](https://www.ask-codey.com/glossary/package-private-access): The default access that limits a type or member to its package.
- [Path](https://www.ask-codey.com/glossary/path): A modern Java representation of a location in a filesystem.
- [Polymorphism](https://www.ask-codey.com/glossary/polymorphism-java): Using one declared type to work with objects that provide different implementations.
- [private](https://www.ask-codey.com/glossary/private): An access modifier that limits a member to its declaring top-level class.
- [protected](https://www.ask-codey.com/glossary/protected): An access modifier that permits package access and access through subclasses.
- [public](https://www.ask-codey.com/glossary/public): An access modifier that makes a type or member broadly accessible.
- [Reference Variable](https://www.ask-codey.com/glossary/reference-variable): A variable that stores a reference to an object rather than the object itself.
- [Serialization](https://www.ask-codey.com/glossary/serialization): Converting an object's state into data that can be stored or transferred.
- [Setter](https://www.ask-codey.com/glossary/setter): A method that validates or changes an object's stored value.
- [Stack Trace](https://www.ask-codey.com/glossary/stack-trace): A report showing the active method calls at the point an error occurred.
- [Static Interface Method](https://www.ask-codey.com/glossary/static-interface-method): A utility method that belongs to an interface rather than its implementations.
- [Subclass](https://www.ask-codey.com/glossary/subclass): A class that extends another class.
- [super](https://www.ask-codey.com/glossary/super-java): A reference used to access a superclass constructor or member.
- [Superclass](https://www.ask-codey.com/glossary/superclass): The class that another class directly extends.
- [this](https://www.ask-codey.com/glossary/this): A reference to the current object inside its instance code.
- [throw](https://www.ask-codey.com/glossary/throw): A statement that deliberately raises an exception object.
- [throws](https://www.ask-codey.com/glossary/throws): A method declaration clause listing exceptions callers may need to handle.
- [toString()](https://www.ask-codey.com/glossary/tostring): A method that returns a readable text representation of an object.
- [transient](https://www.ask-codey.com/glossary/transient): A field modifier that excludes the field from Java's default serialization.
- [try Block](https://www.ask-codey.com/glossary/try-block): A block containing code that may throw an exception.
- [Unchecked Exception](https://www.ask-codey.com/glossary/unchecked-exception): A runtime exception the compiler does not require code to catch or declare.

- Previous level: [Apprentice](https://www.ask-codey.com/glossary/subjects/java/apprentice)
- Next level: [Freelancer](https://www.ask-codey.com/glossary/subjects/java/freelancer)

[Every Java term, by level](https://www.ask-codey.com/glossary/subjects/java)

Source: https://www.ask-codey.com/glossary/subjects/java/journeyman
