ITC313 Programming in Java 2 (8)


This subject teaches students to use advanced Java library components in writing object-oriented programs. The focus of this programming subject is on the creation of robust and correctly constructed Graphical User Interface (GUI) applications that interact with problem domain objects and relational databases. This subject will cover Java GUI components, GUI construction, the interpretation of Unified Modelling Language (UML) class diagrams, streams and serialisation, multithreaded applications, reusable software via JavaBeans and relational database management via the Java Database Connectivity (JDBC). Usage of correct object oriented programming heuristics is emphasised in this subject.

+ Subject Availability Modes and Location

Session 2
InternalBathurst Campus
InternalCSU Study Centre Melbourne
InternalCSU Study Centre Sydney
DistanceBathurst Campus
Continuing students should consult the SAL for current offering details: ITC313
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

Background knowledge at the level of ITC206

Enrolment restrictions

Not available to students who have completed ITC138 or ITC438 or ITC220 or ITC237 or ITC521.
Incompatible subject(s)Related subject(s)
ITC138 ITC220 ITC237 ITC438 ITC521 ITC521 Paired Subject

Learning Outcomes

Upon successful completion of this subject, students should:
  • be able to create, manage and manipulate objects via the Java Collections Framework;
  • be able to design and implement multithreaded Java applications;
  • be able to design and construct Java Graphical User Interfaces (GUI) that interact with problem domain objects;
  • be able to create, connect to and update a relational database using the Java Database Connectivity (JDBC);
  • be able to construct and demonstrate the use of reusable software elements utilising JavaBeans;
  • be able to demonstrate the use of the inheritance features of the Java language to design and implement complex object-oriented programs.


The subject will cover the following topics:
  • Input/output and serialisation.
  • Inheritance and generics.
  • Java collections framework.
  • Basic GUI programming.
  • Graphics.
  • Event-driven programming.
  • User interface components.
  • Advanced GUI topics.
  • Java applets and multimedia.
  • Java database programming.
  • Java threads and Java beans.


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.