This repository contains the code for my personal 15 Days of Java Challenge. The challenge is designed to help me master Java programming by working on a series of hands-on projects. Each day, I will be given a new topic to learn and a task to complete. By the end of the challenge, I will have built a solid foundation in Java programming and object-oriented design, bringing me closer to my goal of becoming a Java master.
Day | Topic | Task |
---|---|---|
1 | Introduction to Java | Write a simple "Hello, World!" program in Java. |
2 | Variables and Data Types | Create a program to calculate the area of a rectangle using user-inputted length and width. |
3 | Control Flow Statements | Write a program to check if a number is prime or not. |
4 | Arrays | Implement a program to find the maximum and minimum elements in an array. |
5 | Methods | Develop a program to calculate the factorial of a number using a recursive method. |
6 | Object-Oriented Programming (OOP) Basics | Define a class representing a car with attributes like make, model, and year, along with methods to get and set these attributes. |
7 | Constructors and Encapsulation | Enhance the car class from Day 6 by adding constructors and encapsulating its attributes. |
8 | Inheritance | Create a superclass called "Shape" with methods to calculate the area and perimeter. Then, create subclasses like "Rectangle" and "Circle" that inherit from "Shape" and implement their own area and perimeter calculation methods. |
9 | Polymorphism | Implement a program using polymorphism to calculate the total cost of shapes (rectangles, circles, etc.) in an array. |
10 | Abstract Classes and Interfaces | Define an interface called "Resizable" with a method to resize shapes. Then, implement this interface in the shape classes from Day 8. |
11 | Exception Handling | Write a program to handle exceptions when performing arithmetic operations (e.g., division by zero). |
12 | File Handling | Develop a program to read data from a text file, perform some operation on it, and write the result to another file. |
13 | Collections Framework | Implement a program to count the frequency of words in a text file using HashMap. |
14 | Generics | Create a generic class called "Box" to store objects of any type, along with methods to add, remove, and get items from the box. |
15 | Review and Project | Build a simple library management system using classes like "Book", "Library", and "Member", implementing features like borrowing and returning books. |
🚀🚀🚀🚀🚀