Skip to the content.

Object-Oriented Programming

Overview

Java is an excellent language to introduce object-oriented programming. After commencing with the traditional procedural programming constructs the course moves swiftly onto the object-oriented paradigm. During the course we will cover: the creation of classes, overloading constructors and methods, arrays, polymorphism, encapsulation, the public, protected and private interfaces, inheritance, abstract classes and unit testing.

The course will also introduce elements of software engineering including the waterfall method. The course will also include a lecture on the use of data structures including, stacks, queues, hash tables and lists.

Course Aims

Java will be used to introduce Object Oriented Programming, commencing at an introductory level. The course will cover encapsulation, inheritance, polymorphism, exception handling, unit testing and software engineering.

Course Objectives

Programme Details

  1. Java Syntax and Semantics, variables, the program development process.
  2. Programming constructs, loops and conditionals.
  3. Classes and objects in Java.
  4. Extending classes with inheritance.
  5. Abstract classes, more inheritance and interfaces.
  6. Exceptions.
  7. Arrays including multi-dimensional arrays.
  8. Java Collections.
  9. Generic Types.
  10. Unit Testing.

Learning Outcomes

By the end of the course students will be expected to:


Development Tools


References


Practice Tasks

Part One (1st semester)

1) Using the Eclipse IDE for Java programming

2) Loops and Conditionals in Java

3) Basic Java Syntax. Strings, Arrays, java.lang.Math

4) Methods and Method Overloading in Java

5) Constructors in Java

6) Basic Object-Oriented Programming in Java

Part Two (2nd semester)

7) Object-Oriented Programming: Inheritance

8) Object-Oriented Programming: Method Overriding, Polymorphism

9) Object-Oriented Programming: Advanced Capabilities

10) Java Collections: Lists, Maps, Sets

11) Generics in Java

12) Java Threads: Defining and starting a thread


Classroom Activities

Draft


Final Task

  1. Object Oriented Programming. Part 2