This repository contains a collection of Java practice projects that demonstrate various core concepts of Object-Oriented Programming (OOP).
Each project was created during my academic learning using the NetBeans IDE, applying OOP theory in hands-on coding.
- Even or Odd Checker – Simple conditionals with encapsulated logic
- Student Scores Analyzer – Array processing with statistics
- Array Methods Demo – Returning and passing arrays
- Quadratic & Rectangle – Constructors, methods, and modular classes
- Inheritance with Cylinder & Circle – Inheritance, overriding, and volume calculations
- Shapes with Inheritance & Interfaces – Full OOP structure using interfaces and hierarchies
- Bank Account & Person Validation – User input + validation logic + account handling
- Exception Handling Demo – Custom exception throws and try-catch-finally
- Encapsulation (private fields, getters/setters)
- Inheritance (classes like
cylinder extends circle1) - Polymorphism (interfaces:
shape2, overridden methods) - Abstraction (using interfaces and class structures)
- Constructor Overloading & Method Overriding
- Exception Handling (try-catch-finally, custom errors)
- Input from user → determines even or odd
- Simple method call + scanner
- Project folder:
even-odd-checker-java
- Reads 10 scores, calculates max, min, and average
- Uses
int[]array and basic loop logic - Project folder:
student-scores-analyzer
- Demonstrates passing and returning arrays
- Uses
int[]anddouble[]arrays - Project folder:
array-methods-demo
- Class
qudraticcalculates roots - Class
rectanglewith area and perimeter - Project folder:
oop-quadratic-and-rectangle-demo
- Class
cylinderinherits fromcircle1 - Method overriding and volume calculation
- Project folder:
inheritance-cylinder-circle-demo
- Uses interface
shape2 - Classes like
rectangle,square,circleuse inheritance and override - Project folder:
oop-shapes-inheritance-interface
- Class
bankacountfor deposit/withdraw - Class
personfor validating phone/email/age/name - Class
BirthDatefor date verification - Project folder:
bank-account-and-person-data-validation
- Method
getAverage()throws exceptions for invalid inputs - Try-catch blocks for built-in Java exceptions
- Project folder:
java-exception-handling-demo
- Java SE
- NetBeans IDE
- Console I/O
- OOP Principles
Created with passion and persistence during my journey of mastering OOP in Java 💻✨