Java 9, Advanced Java with Oracle

Home / Training

Java 9, Advanced Java with Oracle

Course Details:

What is Java Swing?

Swing is a set of program component s for Java programmers that provide the ability to create graphical user interface (GUI) components, such as buttons and scroll bars, that are independent of the windowing system for specific operating system. Swing components are used with the Java Foundation Classes ( JFC ).



The total duration of winter training is 80 Hrs. Training generally gets conducted on 5 days per week, for 4 hours daily. The full course takes upto 1 month time to complete(will be extended if required).

Prerequisites : Basic knowledge of programming.




Programming language Types and Paradigms.

Computer Programming Hierarchy.

How Computer Architecture Affects a Language ?

Why Java ?

Flavors of Java.

Java Designing Goal.

Role of Java Programmer in Industry.

Features of Java Language.

JVM –The heart of Java

Java’s Magic Bytecode


Language Fundamentals The Java Environment:

Installing Java.

Java Program Development

Java Source File Structure




Basic Language Elements:

Lexical Tokens, Identifiers

Keywords, Literals, Comments

Primitive Datatypes, Operators



Object Oriented Programming

Class Fundamentals.

Object & Object reference.

Object Life time & Garbage Collection.

Creating and Operating Objects.

Constructor & initialization code block.

Access Control, Modifiers, methods

Nested , Inner Class &Anonymous Classes

Abstract Class & Interfaces

Defining Methods, Argument Passing Mechanism

Method Overloading, Recursion.

Dealing with Static Members. Finalize() Method.

Native Method. Use of “this “ reference.

Use of Modifiers with Classes & Methods.

Design of Accessors and Mutator Methods

Cloning Objects, shallow and deep cloning

Generic Class Types


Extending Classes and Inheritance

Use and Benefits of Inheritance in OOP

Types of Inheritance in Java

Inheriting Data Members and Methods

Role of Constructors in inheritance

Overriding Super Class Methods.

Use of “super”.

Polymorphism in inheritance.

Type Compatibility and Conversion

Implementing interfaces.



Organizing Classes and Interfaces in Packages.

Package as Access Protection

Defining Package.

CLASSPATH Setting for Packages.

Making JAR Files for Library Packages

Import and Static Import

Naming Convention For Packages


Exception Handling:

The Idea behind Exception

Exceptions & Errors

Types of Exception

Control Flow In Exceptions

JVM reaction to Exceptions

Use of try, catch, finally, throw, throws in Exception Handling.

In-built and User Defined Exceptions

Checked and Un-Checked Exceptions


Array & String :

Defining an Array

Initializing & Accessing Array

Multi –Dimensional Array

Operation on String

Mutable & Immutable String

Using Collection Bases Loop for String

Tokenizing a String

Creating Strings using StringBuffer


Thread :

Understanding Threads

Needs of Multi-Threaded Programming.

Thread Life-Cycle

Thread Priorities

Synchronizing Threads

Inter Communication of Threads

Critical Factor in Thread -DeadLock



Applet & Application

Applet Architecture.

Parameters to Applet

Embedding Applets in Web page.

Applet Security Policies


A Collection of Useful Classes

Utility Methods for Arrays

Observable and Observer Objects

Date & Times

Using Scanner

Regular Expression

Input/Output Operation in Java( Package)

Streams and the new I/O Capabilities

Understanding Streams

The Classes for Input and Output

The Standard Streams

Working with File Object

File I/O Basics

Reading and Writing to Files

Buffer and Buffer Management

Read/Write Operations with File Channel

Serializing Objects


GUI Programming

Designing Graphical User Interfaces in Java

Components and Containers

Basics of Components

Using Containers

Layout Managers

AWT Componets

Adding a Menu to Window

Extending GUI Features Using Swing Components

Java Utilities (java.util Package)

The Collection Framework :

Collections of Objects

Collection Types




Understanding Hashing

Use of ArrayList & Vector


Event Handling

Event-Driven Programming in Java

Event- Handling Process

Event-Handling Mechanism

The Delegation Model of Event Handling

Event Classes

Event Sources

Event Listeners

Adapter Classes as Helper Classes in Event Handling

Anonymous Inner classes a Short –cut to Event Handling

Avoiding Deadlocks in GUI Code

Event Types & Classes

Networking Programming

Networking Basics

Client-Server Architecture

Socket Overview

Networking Classes and Interfaces

Network Protocols

Developing Networking Applications in Java


Database Programming using JDBC

Introduction to JDBC

JDBC Drivers & Architecture

CURD operation Using JDBC

Connecting to non-conventional Databases.




Section 1 - Lambda Expressions

  • Interface Static Methods

  • Default Methods

  • Functional Interfaces

  • Lambda Syntax

  • Using Lambdas

  • Function Descriptors

  • Method References

  • Choosing Functional Interfaces

  • Constructor References

  • Closures

  • Lambda Compositions


Section 2 - Streams API

  • What are Streams?

  • Stream Advantages

  • Stream Operations

  • Streams vs. Collections

  • Filtering and Mapping

  • Finding and Matching

  • Reductions

  • Numeric Streams

  • Infinite Streams

  • Building Streams

  • Collectors

  • Grouping and Partitioning

  • Parallel Streams


Section 3 - Refactoring and Testing

  • Refactoring to Lambdas

  • Refactoring to Method References

  • Refactoring to Streams

  • Refactoring Code Patterns

  • Unit Testing Lambdas

  • Visible Lambdas

  • Lambda Behaviors

  • Lambda Stack Traces

  • Stream Debugging


Section 4 - Concurrency Enhancements

  • Parallel Array Methods

  • Thread Locals

  • Atomics and Lambdas

  • Concurrent HashMaps

  • Completable Futures

  • Pipelining

  • Applying Futures

  • Composing Futures

  • Combining Futures

  • Reactive Completions


Section 5 - Functional Programming

  • Functional Style Java

  • Shared Mutable Data

  • Imperative vs. Declarative

  • Guidelines

  • Referential Transparency

  • Replacing Iteration

  • Pure Functions

  • Currying

  • Combinators


Appendix - Java 8 APIs

  • Date and Time APIs

  • Optional Class



We had 2 projects in our syllabus.

Register Now