Java & Object-Oriented Programming
This repository contains code examples and exercises used in a Java and Object-Oriented Programming (OOP) training session I delivered to my coworkers.
The goal of the training was to strengthen understanding of Java fundamentals and core OOP principles through practical, hands-on learning.

About the Training
The training covered:
- Java language basics
- Object-oriented concepts and best practices
- How to design, structure, and implement maintainable code in Java
- Practical examples to reinforce theory
Each .java
file in this repository focuses on a specific topic, keeping the examples clear and self-contained.
Topics Covered
- Java Basics
- Variables and data types
- Control structures (
if
,switch
, loops) - Methods and parameter passing
- Arrays and collections
- OOP Fundamentals
- Classes and objects
- Encapsulation (getters, setters, access modifiers)
- Inheritance and composition
- Polymorphism and method overriding
- Abstraction with abstract classes and interfaces
- Advanced OOP Concepts
- Constructors and overloading
- Static members and constants
final
keyword usage- Inner classes
- Best practices for class design
- Java-Specific Features
toString()
,equals()
andhashCode()
- Working with
List
,Map
, andSet
- Exception handling (
try
,catch
,finally
,throw
,throws
) - Packages and imports