Skip to main content

AAU

Object-Oriented Programming


Object-Oriented Programming (Java) is a core course designed to equip students with the fundamental and advanced concepts of object-oriented software development using the Java programming language.

Enrollment in this course is by invitation only

Object-Oriented Programming (Java) is a core course designed to equip students with the fundamental and advanced concepts of object-oriented software development using the Java programming language. Tailored for second-year undergraduate Software Engineering students, this course introduces and reinforces the principles of OOP—encapsulation, inheritance, polymorphism, and abstraction—within the context of real-world software engineering challenges.

Students will begin by setting up a modern Java development environment and building simple applications using classes and objects. The course then progresses into more advanced OOP features such as interfaces, generics, exception handling, and file I/O. A significant portion is dedicated to the practical use of JavaFX for GUI development and the Java Collections Framework, providing a comprehensive toolkit for robust application design.

Throughout the semester, learners engage in lectures, lab sessions, coding assignments, and group projects, ensuring both theoretical understanding and hands-on proficiency. By the end of the course, students will be capable of designing, implementing, and testing well-structured Java applications using industry best practices.

This course lays a critical foundation for advanced topics in software architecture, enterprise application development, and system design.