Module 1: Basics of Object-Oriented Programming (in Java)
Objectives
The main objective of this module is to teach basic object-oriented programming skills
using the programming language Java. Fundamentals of programming and
programming style are explained while most of the language is covered in
the process. Various examples and an extensive case study are discussed,
both in guided lab sessions and in assignments to be solved off line.
Prerequisites
This module targets both neophytes in programming and people with
programming expertise but no real exposure to recent trends in (object-oriented) programming
languages.
Contents
This module teaches fundamental object-oriented programming concepts such as:
- classes and objects
- types and interfaces
- methods, message passing, self sends and super sends
- encapsulation, inheritance, late binding, overriding and polymorphism
- abstract classes and abstract methods
All these concepts are explained using Java syntax, and guided exercises are given in Java to gain a deeper understanding of these concepts.
If you want to learn about some of the more advanced programming concepts, you should choose Module 4: OOP Advanced.
Study material
- Lecture notes (copies of overhead graphs)
- "Java Gently" by Judy Bishop, Addison-Wesley '97 [ISBN 0-201-59399-8]
- "Java Development Environment" (e.g. Borland 5.0, Codewarrior Pro, SUN
JDK, Symantec Cafe, Visual J++)
- "The Java Language Specification" by James Gosling, Bill Joy and Guy
Steele, Addison-Wesley '96 [ISBN 0-201-63451-1]
![[Back]](back.gif)
Module 1 of 9: OOP Basics