401122 - Object Oriented Programming Language
Credit Hours

3

Pre-requisite

401121

Co-requisite

401123

Distribution

3+0

This course focuses on Object-Oriented programming and design concepts including abstraction, encapsulation, modularity, reuse and information hiding. Topics covered include: classes, objects in addition to relationships between classes such as: inheritance, association, aggregation and composition in addition to concepts related to generic programming such as overloading, overriding and polymorphism. The course also covers the concepts of interfaces, and abstract methods and classes in addition to wrapper classes and exception handling. It also introduces students to generics and collections and GUI. It focuses on how to apply these in solving practical problems using a modern software development environment while committing to programming and other OOP best practices.