Is a data platform that provides everything you need to build real-time data-driven applications. Learn about the different features and components, how to use them and how to program your applications.

Online Live Training
Video Based Training
Corporate Training

50+ Hours

Introducing the Java Technology

  • RELATING JAVA WITH OTHER LANGUAGES
  • Showing how to download, install, and configure the Java environment on a Windows system.
  • Describing the various Java technologies such as Java EE, JavaME, Embedded Java SE
  • Describing key features of the technology and the advantages of using Java
  • USING AN INTEGRATED DEVELOPMENT ENVIRONMENT (IDE)

Thinking in Objects

 
  • Defining the problem domain
  • Identifying objects and recognizing the criteria for defining objects

Introducing the Java Language

 
  • Defining classes
  • Identifying the components of a class
  • Creating and using a test class
  • Compiling and executing a test program

Working with Primitive Variables

 
  • Declaring and initializing field variables
  • Describing primitive data types such as integral, floating point, textual, and logical
  • Declaring variables and assigning values
  • Using constants
  • Using arithmetic operators to modify values
 

Working with Objects

 
  • Declaring and initializing objects
  • Storing objects in memory
  • Using object references to manipulate data
  • Using JSE javadocs to look up the methods of a class
  • Working with String and StringBuilder objects

Using operators and decision constructs

 
  • Using relational and conditional operators
  • Testing equality between strings
  • Evaluating different conditions in a program and determining the algorithm
  • Creating if and if/else constructs
  • Nesting and chaining conditional statements
  • Using a switch statement

Creating and Using Arrays

 
  • Declaring, instantiating, and initializing a one-dimensional Array
  • Declaring, instantiating, and initializing a two-dimensional Array
  • Using a for loop to process an Array
  • Creating and initializing an ArrayList
  • Using the import statement to work with existing Java APIs
  • Accessing a value in an Array or and ArrayList
  • Using the args Array

Using Loop Constructs

 
  • Creating while loops and nested while loops
  • Developing a for loop
  • Using ArrayLists with for loops
  • Developing a do while loop
  • Understanding variable scope

Working with Methods and Method Overloading

 
  • Creating and Invoking a Method
  • Passing arguments and returning values
  • Creating static methods and variables
  • Using modifiers
  • Overloading a method

Introducing Advanced Object Oriented Concepts

 
  • Using inheritance
  • Using types of polymorphism such as overloading, overriding, and dynamic binding
  • Working with superclasses and subclasses
  • Adding abstraction to your analysis and design
  • Understanding the purpose of Java interfaces
  • Creating and implementing a Java interface

Handling Errors

 
  • Understanding the different kinds of errors that can occur and how they are handled in Java
  • Understanding the different kinds of Exceptions in Java
  • Using Javadocs to research the Exceptions thrown by the methods of foundation classes
  • Writing code to handle Exceptions

The Big Picture

  • Creating packages and JAR files for deployment using java
  • Two and three tier architectures
  • Looking at some Java applications examples

Java Platform Overview

 
  • Introductions
  • Course Schedule
  • Java Overview
  • Java Platforms
  • 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 instance of 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

Threading

 
  • Operating system task scheduling
  • Recognizing multithreaded environments
  • Creating multi-threaded solutions
  • Sharing data across threads
  • Synchronization and Deadlock
  • Immutable objects

Concurrency

 
  • Creating Atomic variables
  • Using Read-Write Locks
  • Thread-safe collections
  • Concurrenct synchronizers (Semaphore, Phaser, and others)
  • Executors and ThreadPools to concurrently schedule tasks
  • Parallelism and the Fork-Join framework

Database Application with JDBC

 
  • Layout of the JDBC API
  • JDBC divers
  • Queries and results
  • PreparedStatement and CallableStatement
  • Transactions
  • RowSet 1.1 RowSetProvider and RowSetFactory
  • The DAO Pattern and JDBC

Localization

 
  • Advantages of localization
  • Defining locale
  • Read and set locale using the Locale object
  • Resource bundles
  • Format messages, dates and numbers