ITC206 Programming in Java 1 (8)


This subject covers problem-solving, computer program design and implementation in Java at an introductory level. Programming concepts are presented using an object-oriented approach and students learn how to develop programs using object-oriented techniques. The subject covers class design, the use of inheritance in class design and the use of aggregation techniques. Students learn to develop small applications consisting of a number of classes.

+ Subject Availability Modes and Location

Session 1
InternalCSU Study Centre Melbourne
InternalCSU Study Centre Sydney
Session 2
InternalBathurst Campus
DistanceBathurst Campus
Continuing students should consult the SAL for current offering details: ITC206
Where differences exist between the Handbook and the SAL, the SAL should be taken as containing the correct subject offering details.

Subject information

Duration Grading System School:
One sessionHD/FLSchool of Computing and Mathematics

Assumed Knowledge

ITC104 or ITC106

Enrolment restrictions

Not available to students who have completed ITC140, ITC421 or ITC538
Incompatible subject(s)Related subject(s)
ITC140 ITC421 ITC538 ITC538 similar content
ITC421 similar content
ITC140 similar content

Learning Outcomes

Upon successful completion of this subject, students should:
  • be able to implement basic algorithms in Java;
  • be able to interpret design requirements expressed in UML (Unified Modelling Language);
  • be able to apply inheritance and aggregation patterns in the design and implementation of programs;
  • be able to manipulate simple file operations using Java;
  • be able to use object-oriented techniques and Java resources to develop small applications consisting of a number of classes;
  • be able to apply basic testing and debugging techniques in program development.


The subject will cover the following topics:
  • Review of basic programming principles in the context of the Java language, strong typing and flow of control patterns.
  • Object-based programming: the creation of objects, their use and interaction.
  • The interpretation of design requirements through simple UML.
  • User-defined classes, class design and implementation.
  • Testing and debugging techniques.
  • Inheritance patterns and inheritance implementation: base classes, derived classes and abstract classes.
  • Aggregation patterns implementation: the creation and management of collections of objects.
  • Application development in Java using object-oriented techniques.
  • Simple file manipulation operations.


The information contained in the 2016 CSU Handbook was accurate at the date of publication: 06 September 2016. The University reserves the right to vary the information at any time without notice.