STATE
CITY
NSW
QLD
VIC
Sydney
DATE
Choose a date...
20 Apr 15 - 24 Apr 15
18 May 15 - 22 May 15
15 Jun 15 - 19 Jun 15
06 Jul 15 - 10 Jul 15
10 Aug 15 - 14 Aug 15
07 Sep 15 - 11 Sep 15
What is OLL?
PRICE
DURATION
$4,050.00 inc. GST
5 Days
Overview:
This course covers the Java SE programming language, how to develop Java applications using Eclipse, as well as more advanced object-oriented programming concepts. Students will learn the syntax of the Java programming language, object-oriented programming using Java, operators and branching, and working with classes, controls structures, and arrays. In addition, this course covers inheritance, interfacing, polymorphism, generics and collections. Students will also learn about common Java classes providing exception handling, logging, and file input/output (I/O). During the course, students will develop and test Java applications using Eclipse.
Target Audience:
This course is intended for programmers who are interested in adding Java to their skills.
Pre-requisites:
This course is intended for students who wish to add Java SE to their programming repertoire. Students should have some experience with coding, preferably an Object Oriented Programming (OOP) language.
Module 1: Overview of Java
History of Java
Benefits of Java
What is Java
What's this "Virtual Machine?"
Comparison to Other Languages
Garbage Collection
Java Programs
Basic Java Development Tools
Java Edtions
Example - HelloWorld
Java Classes
Main Methods
Statements
Module 2: Java Tools in Eclipse
Eclipse Platform
Eclipse Workspace
Perspectives, Views and Editors
The Java Perspective
The Debug Perspective
Navigator View
Package Explorer
Outline View
Problems View
Eclipse Preferences
Build and Validation
Code Completion, Templates and Snippets
Searching
Configure Compiler Class Path
JRE Switching
Module 3: Basic Object Concepts
What Is An Object?
State
Behavior
Encapsulation
Classes vs. Objects
Inheritance
Interfaces
Polymorphism
Benefits of Objects
Module 4: Basic Java Syntax
Declaring and Initialising Variables
Keywords
Primitive Data Types
Logical - boolean
Textual - character and String
Integral - byte, short, integer, long
Floating Point - float and double
Literal Values
Strings
Creating Strings
White Space
Comments
Scope of a Variable
System.out/System.in
Scanner Class
Module 5: Operations and Making Decisions
Operator Categories
Special Situations
Binary Operators
Integer Division
Numeric Promotion
Type Conversion of Primitive Types
Unary Operators
Relational Operators
Logical Operators
Bitwise Operators
Bitwise Examples
Shift Operators
Overflow and Underflow
Assignment Operators
Ternary Operator
Calculation Errors
Operator Precedence
Precedence Examples
Combining Strings
Control Flow Statements
'if' Statement
'if...else' Statement
Nested Statements
"Short Circuited" Operators
Module 6: Using Classes and Objects
Objects, Instances, and Classes
JVM Storage Areas
What are Classes?
Working with Classes and Objects
Instantiation
Instance Methods
Object References
String Operations
The Math Class
Module 7: Writing Classes
Why Define Your Own Classes?
Encapsulation
Elements of a Class
Defining Classes
Fields
Defining Fields
Methods
Defining Methods
Passing Parameters
Local Variables vs. Instance Variables
Module 8: Controlling Code Access and Code Organisation
Controlling Access
Data Hiding
Encapsulation
JavaBeans
Packages
Problems Solved with Packages
Naming Packages
Declaring Packages in Classes
Package Access
Import Statement
Using Classes from Packages
Correlation to File Structure
Class Path
Java Core Packages
Java API Documentation
Module 9: Constructors and Class Members
Constructors
Multiple Constructors
Defining Constructors
Default Constructor
'this' Keyword
Using 'this' to Call a Constructor
Using 'this' to Set a Field
Class Members
Comparison with Instance Members
Use of Class Variables
Static Class Methods
Use of Class Methods
Main Method and Command Line Arguments
Declaring Constants
Useful Standard Class Members
Initialisation Blocks
Static Initialisation Blocks
Module 10: Advanced Control Structures
'switch' Statement
Switch "Fall Through"
'for' Loop
'while' Loop
'do...while' Loop
Break Statement
Labelled Statements
Continue Statement
Arrays
Declaring Arrays
Populating Arrays
Accessing Arrays
Array Length
Array References
Multidimensional Arrays
Arrays of Arrays
Copying Arrays
For-Each loop
Variable Arguments
Inheritance Is...
Declaring Inheritance
Inheritance Hierarchy
Access Modifiers Revistited
Inherited Members
Instances of a Subclass
Role in Reuse
The super Keyword
Problems with Constructors
Limiting Subclasses
'Set' Methods in Constructors
The Object Class
Module 13: Commonly Overridden Methods
Overiding Methods
toString()
toString() in Object
Overriding toString()
Comparing Objects
Using = = vs. equals(..)
Overriding equals(..)
Complex Comparisons
hashCode()
Overriding hashCode()
Module 14: Exceptions and Assertions
What is an Exception?
Benefits
The Exception Class
How to Work with Exceptions
The try-catch-finally Statement
Flow of Program Control
Checked Exceptions
Unchecked Exceptions
Catching Multiple Exceptions
Specifying Thrown Exceptions
Rethrowing Exceptions
Chaining Exceptions
Creating Your Own Exception
Assertions
When to use Assertions
Enabling Assertions
Module 15: Interfaces and Polymorphism
Casting Objects
The instance of Operator
Abstract Classes
Interface
Comparable Interface
Polymorphism
Conditions for Polymorphism
Covariant Return Types
Refactoring
Module 16: Collections, Generics, and Enumerations
What are Collections?
Arrays vs. Collections
Main Collections Interfaces
java.util.Collection
Main Collection Methods
Sets
java.util.List
java.util.Queue
Iteration on a collection
Iterator vs. For-Each Loop
Maps
java.util.Map
java.util.SortedMap
Collections Implementations
Generics and Collections
Collections and Primitive Types
"Wrapper" Classes
Autoboxing
Enumerated Types
Module 17: Java Logging API and Useful Java Classes
Java Logging API
Control Flow of Logging
Logging Levels
Logging Handlers
Logging Formatters & Log Manager
Logging Configuration File
Logging Filters
java.lang.StringBuilder
java.util.StringTokenizer
java.util.Arrays and java.util.Collections
java.util.Random
java.util.Date
GregorianCalendar and Calendar
Formatting
Module 18: Input and Output
Streams
Input Stream
Output Stream
"Chained" Streams
The File Class
Reader and Writer
Buffers
Channels
Serialisation
Serialising Object State
Avoiding Serialisation Problems
SerialVersionUID
Options to Write Files
Course Ratings Averaged from 148 responses. Overall Satisfaction
Skills Bundle This course can be purchased as part of the following bundle(s).