JAVA Programming 
Duration: 40 hrs
Audience:
Ø  Data Warehouse Administrator
Ø  Forms Developer
Ø  System Analysts
Ø  Business Analysts
Ø  Developer
Ø  Application Developers
Ø  PL/SQL Developer
 
Suggested Prerequisites:
Ø  None
 
Java Platform Overview
Introductions 
Ø  OpenJDK Licensing
Ø  Java in Server Environments
Ø  The Java Community Process
 
 
Java Syntax and Class Review
Ø  Simple Java classes
Ø  Java fields, constructors and methods 
Ø  Model objects using Java classes 
Ø  Package and import statements
 
Encapsulation and Polymorphism
Ø  Encapsulation in Java class design
Ø  Model business problems with Java classes
Ø  Immutability Subclassing Overloading methods
Ø  Variable argument methods
 
 
Java Class Design
Ø  Access modifiers: private, protected and public
Ø  Method overriding Constructor overloading The instanceof operator
Virtual method invocation Polymorphism
Ø  Casting object references
Ø  Overriding Object methods
 
 
Advanced Class Design
Ø  Abstract classes and type generalization
Ø  The static and final modifiers Field modifier best practices The
Singleton design pattern Designing abstract classes Nested classes
Ø  Enumerated types
 
 
Inheritance with Java Interfaces
Ø  Java Interfaces
Ø  Types of Inheritance
Ø  Object composition and method delegation
Ø  Implementing multiple interfaces
Ø  The DAO design pattern
 
 
Generics and Collections
Ø  Generic classes and type parameters
Ø  Type inference (diamond) Collections and generics List, set and Map
Ø  Stack and Deque
 
 
String processing
Ø  String manipulation with StringBuilder and StringBuffer
Ø  Essential String methods
Ø  Text parsing in Java
Ø  Input processing with Scanner
Ø  Text output and formatting
Ø  Regular expressions with the Pattern and Matcher classes
 
 
Exceptions and Assertions
Ø  Exceptions categories
Ø  Standard Java Exception classes Creating your own Exception classes
Using try-catch and the finally clause
Ø  Using try-with-resources and the AutoCloseable interface
Ø  The multi-catch feature
Ø  Best practices using exceptions
Ø  Assertions
 
 
 
I/O Fundamentals
Ø  I/O using Java
Ø  Reading the console input stream
Ø  Writing to the console Using I/O Streams Chaining I/O Streams Channel
I/O
Ø  Reading and writing objects using Serialization
 
 
File I/O with NIO 2
Ø The Path interface
Ø The Files class
Ø Directory and File operations Managing file system attributes Reading,
writing, and creating files Watching for file system changes