Ot3

Java Foundations


Course Outline

Java Foundations has now replaced the training course Java for Non OO Programmers. It is a revamped and updated course that reflects the latest Java technology platform.

This four-day course is designed for developers who want to become proficient in Java and the Object-Oriented Programming Paradigm. You will learn the key features of the language and core APIs, as well as, develop skills in Java programming and object-oriented development.

Provides a very comprehensive, up-to-date coverage of the Java Language (Version 7) and key APIs found in the Standard Edition Platform. Best practice in utilising the language and object-oriented programming is also discussed in detail.


Outcomes

At the end of this course, you will be able to:

  • Be a productive and competent Java Developer
  • Have a solid foundation in Object-Oriented Programming Concepts
  • Be familiar with the key Java APIs.

Book Course Now

Please Note: Special prices are available for an In House delivery of this course. Read about the benefits and choices of our 'In House' course delivery option here.

Contact an Object Training Account Manager to enquire about alternative delivery options (such as In House or Customisation).

*All Australian prices are exclusive of GST

*If the course status is FULL or no date is scheduled in your state please contact object training on 1300 360 203

Location Days Dates Cost (ex GST) Course Status
Sydney 4 Days 03/06/2013 - 06/06/2013 $3000.00 Available Book Now
Melbourne 4 Days 04/06/2013 - 07/06/2013 $3000.00 Available Book Now
Melbourne 4 Days 24/09/2013 - 27/09/2013 $3000.00 Available Book Now
Sydney 4 Days 30/09/2013 - 03/10/2013 $3000.00 Available Book Now
Sydney 4 Days 11/11/2013 - 14/11/2013 $3000.00 Available Book Now
Adelaide 4 Days 09/12/2013 - 12/12/2013 $3000.00 Available Book Now

Topics Covered

An Overview Of Java
Introduces the student to Java, the language and it’s environment. Discusses the major platforms JSE, JEE, and JME, and traces it’s evolution to the latest version of the language.
The Object Oriented Programming Model
Introduces the Object-Oriented Programming (OOP) Paradigm. Explores the concept of an object-oriented software application as a collaboration of runtime objects. The importance of strong module cohesion and weak inter-module coupling is discussed in the context of OOP.  Abstract concepts are made concrete by using a simple Java Application to illustrate.
Classes, Objects and Java Basics
Basic Java syntax is introduced within an object-oriented context, i.e. students immediately start to program using classes and objects. Students are taught how to implement the OO model in Java correctly with a proper understanding of information hiding and encapsulation. This is a key section and lays the foundation for the rest of the course.
Inheritance and Polymorphism
Covers the ‘advanced’ OOP concepts of inheritance and polymorphism, and their implementation in Java. In addition to learning the relevant Java language constructs, students are also provided with best practice guidelines on the proper and correct use of inheritance and polymorphism so as to enable their code to be more maintainable and extensible. Abstract classes are also covered here as an important element for defining polymorphic behaviour.
Interface, Packages and Java Annotations
The use of interfaces is very important in designing large systems. It helps to decouple layers of modules making for more maintainable systems. Java supports interfaces directly. The use of namespaces is also very important for information-hiding and scope. Java provides the package concept to achieve this. Packages provide for the logical and physical portioning of large Java applications.  Annotations as meta-data is also covered.
Data Structures, Algorithms and Generics
Introduces the important concept of Generic Programming. Generics promote reuse by allowing generalised implementations that is type-safe.  The Java API also has an extensive set of generic data structures and algorithms for dealing with the storage, retrieval and manipulation of aggregates of objects. On completion of this topic, students will be familiar with the available data structures. More importantly, students will learn how to choose the most appropriate abstract data type as well as the implementing class that fits their problem characteristics. Students are also taught how to implement classes whose instances will operate correctly with collections that require equality testing and collation.
Exceptions
Java has a typed exception mechanism that provides for orderly handling of abnormal conditions. Programmers can define their own application exceptions that integrates into the Java Exception Mechanism. In addition, the latest Java 7 features of multi-catch and Automated Resource Managent.
Inner Classes
Explain inner classes and demonstrate the inner class techniques. What are inner classes?, Types of inner classes – Top level classes, Local classes, Anonymous classes, Examples of each inner class type
Java Libraries
This section provides an overview of some key Java APIs:
*	Interacting with the Environment
*	Basic Java I/O
*	NIO.2
*	Formatting Objects
*	Database access with JDBC
*	GUI Development with Swing
Multi-Threading in Java
What’s a Thread? Creating and Extending Threads, Implementing the Runnable Interface, Thread Priorities, Groups,  Control, Synchronisation and Notification. 
Deploying Java Applications
A look at how Java Applications can be deployed. As executable JAR files, or over the internet using Java Web Start (JavaWS).
javadoc
Learn how to generate external documentation for your code using the javadoc tool and specification. Look at how you can produce documentation like those that come with the Java API.
JUnit
JUnit is the de facto unit-testing tool for Java. Learn how to use it in Test-Driven Development(TDD).

Prerequisites

Participants should have significant practical experience in a programming language.
It would also be helpful if attendees have a basic understanding of Object-Oriented Concepts.  Attending our course Object Technology Refresher is a good way of gaining the basics.

Audience

IT Professionals wanting to become a knowledgeable and competent Java Developer.

Course Fee

$3000.00 ex GST

Duration

4.0 Days

Structure

Presentations, Demonstrations & Exercises (50% practical). PC-based

Tools

Java 7 Standard Edition JDK and Eclipse Juno IDE.

Material

Deliverable material for this course includes:

  • Certificate of Accomplishment
  • Professionally printed student notes and exercises
  • CD containing original exercises and source code (For PC-based courses only)

For all courses, but particularly PC-based courses, students are encouraged bring their own USB drive to save worked solutions and/or additional reference material.

Terms and Conditions

Please click here to review our terms and conditions before booking on your course