Welcome! π This repository contains all the materials for the Object-Oriented Programming (Java) course. This course is designed to transition students from procedural programming (C) to the OOP paradigm using Java.
Before starting, you should have:
- Familiarity with the C programming language.
- Understanding of basic programming logic (loops, conditions, functions).
- JDK 17+ installed on your machine.
This table combines slides, practice notebooks, and solutions for easy access.
| Week | Topic | Slides | Google Colab Notebooks | Solutions |
|---|---|---|---|---|
| 1 | Introduction to Java | Link π | Notebook π | Solution β |
| 2 | Classes & Objects | Link π | Notebook π | Solution β |
| 3 | Java Basics | Link π | Notebook π | Solution β |
| 4 | Strings and Arrays | Link π | Notebook π | |
| 5 | ArrayList | Link π | Notebook π | |
| 6 | Static Members | Link π | Notebook π | |
| 7 | Inheritance and Polymorphism | Link π | Notebook π | |
| 8 | Dynamic and Static Polymorphism | Link π | Notebook π | |
| 9 | Interfaces | Link π | Notebook π | Solution β |
| 10 | Sorting | Link π | Notebook π | |
| 11 | Exceptions | Link π | Notebook π | |
| 12 | Collections | Link π | Notebook π | |
| 13 | Exam Preparation | Link π | Exam Topics (HU) |
The laboratory exercises are located in the /practical-exercises folder.
| Week | Problem |
|---|---|
| 1 | π Week 1 |
| 2 | π Week 2 |
| 3 | π Week 3 |
| 4 | π Week 4 |
| 5 | π Week 5 |
| 6 | π Week 6 |
| 7 | π Week 7 |
| 9 | π Week 9 |
| 10 | π Week 10 |
| 11 | π Week 11 |
| 12 | π Week 12 |
| 13 | π Week 13 |
- View Slides: Start with the OOP - Java slides.
- Interactive Practice: Click the Week X links in the table above to open Google Colab notebooks.
- Local Development: Solve the weekly lab exercises!