Lecture 2: Object-Oriented Concepts

This is a review lecture, covering concepts you should have encountered before, which you will need in later lectures. It reviews what objects and classes are, considers the different types of relationship that can exist between classes and explores how inheritance allows us to build applications with polymorphic code, involving abstract classes or interfaces.

Some of the concepts reviewed here are demonstrated by a simple graphics application.