Skip to main content
Unit of study_

COMP9003: Object-Oriented Programming

2024 unit information

Object-oriented (OO) programming is a technique that arranges code into classes, each encapsulating in one place related data and the operations on that data. Inheritance is used to reuse code from a more general class, in specialised situations. Most modern programming languages provide OO features. Understanding and using these are an essential skill to software developers in industry. This unit provides the student with the concepts and individual programming skills in OO programming, starting from their previous mastery of procedural programming.

Unit details and rules

Managing faculty or University school:

Computer Science

Code COMP9003
Academic unit Computer Science
Credit points 6
Prerequisites:
? 
None
Corequisites:
? 
None
Prohibitions:
? 
INFO1113 or INFO1103 or COMP9103
Assumed knowledge:
? 
COMP9001 OR INFO1110 OR INFO1910

At the completion of this unit, you should be able to:

  • LO1. demonstrate an understanding of the concept of Object-Orientation: understand and explain key concepts of object-oriented programming, including classes as encapsulating data, object instances, memory model of references, methods and calling them across objects
  • LO2. read and interpret an object oriented design document
  • LO3. demonstrate an understanding of the memory model and differences between locations of variables
  • LO4. derive a computer program from a design document that uses concepts of OO and memory model, trace and write small examples of code including the following elements: inheritance, polymorphism, abstract classes and interfaces, variables and their type and the relationship between static and dynamic type, exception
  • LO5. demonstrate experience in testing Object-Oriented programs, write tests for standalone objects, be able to generate and handle exceptions, create invariants for classes, methods and objects, pre- and post-conditions for methods, and assertions
  • LO6. create appropriate class/data structure including the data types and methods for simple problems
  • LO7. read, trace and write recursive Object-Oriented programs to perform an operation in a related set of classes that support some nested structure
  • LO8. demonstrate an understanding of Object-Oriented programming language : reading, tracing and writing competence with the following elements of Java programming language: classes, methods, object creation; instance and local variables, parameters and scope; basic types; simple I/O; control flow primitives and understand, modify and add functionality to Java programs
  • LO9. demonstrate experience writing code with common interfaces and collections in Object-Oriented programming language
  • LO10. demonstrate experience in testing and debugging Object-Oriented programs, write tests for stand-alone object code, to be run automatically.

Unit availability

This section lists the session, attendance modes and locations the unit is available in. There is a unit outline for each of the unit availabilities, which gives you information about the unit including assessment details and a schedule of weekly activities.

The outline is published 2 weeks before the first day of teaching. You can look at previous outlines for a guide to the details of a unit.

Session MoA ?  Location Outline ? 
Semester 1 2024
Normal day Camperdown/Darlington, Sydney
Semester 2 2024
Normal day Camperdown/Darlington, Sydney
Outline unavailable
Session MoA ?  Location Outline ? 
Semester 1 2022
Normal day Camperdown/Darlington, Sydney
Semester 1 2022
Normal day Remote
Semester 2 2022
Normal day Camperdown/Darlington, Sydney
Semester 2 2022
Normal day Remote
Semester 1 2023
Normal day Camperdown/Darlington, Sydney
Semester 1 2023
Normal day Remote
Semester 2 2023
Normal day Camperdown/Darlington, Sydney

Modes of attendance (MoA)

This refers to the Mode of attendance (MoA) for the unit as it appears when you’re selecting your units in Sydney Student. Find more information about modes of attendance on our website.