This project demonstrates the fundamental and intermediate concepts of Object-Oriented Programming (OOP) in C#. It covers creating classes, defining fields, using constructors, initializing objects, applying methods, and implementing method overloading.
- Creating Classes and Objects
- Object Initialization (two methods)
- Using Fields and Methods
- Working with Lists of Objects
- Constructors and Parameterized Constructors
- Method Overloading
- Combining Classes with Loops and Conditions
✅ Goal: Understand how to define a class with properties and initialize an object using both:
- Default constructor + property assignment.
- Object initializer syntax.
✅ Goal: Learn to create simple classes with properties and display object data.
✅ Goal: Understand how to define and call methods inside a class.
✅ Goal: Practice creating and iterating over a list of custom objects.
✅ Goal: Learn to use constructors for initializing class data.
✅ Goal: Learn to instantiate multiple objects dynamically using constructors.
✅ Goal: Practice constructors with multiple parameters and lists.
✅ Goal: Combine constructors and methods for data calculation.
✅ Goal: Demonstrate class methods and business logic inside constructors.
✅ Goal: Learn how method and constructor overloading allow multiple ways to create objects.
| Concept | Description | 
|---|---|
| Class | Blueprint for creating objects. | 
| Object | Instance of a class containing real data. | 
| Constructor | Initializes an object’s data when created. | 
| Method | Performs an action using object data. | 
| Overloading | Multiple constructors or methods with different parameters. | 
| List of Objects | Used to manage multiple instances efficiently. | 
Through these exercises, you’ve practiced:
- Declaring and using classes and objects.
- Creating constructors and understanding their purpose.
- Working with lists of custom objects.
- Using methods and method overloading effectively.
These tasks form the foundation of Object-Oriented Programming (OOP) in C# and are essential for building scalable applications.