Java Language Fundamentals :

  • Editions of Java
  • Features of Java
  • Hello World program in Java
  • Using JAVAC to compile and run Java program
  • Data types and control structures
  • Using printf() method and Scanner class
  • Working with Arrays
  • Varying Arguments
  • Command line arguments

Object Oriented Programming :

  • What is OOP – encapsulation, inheritance, and polymorphism
  • How to create a class and instantiate objects
  • Using Constructors
  • Method overloading and constructor overloading
  • Object reference and this reference
  • Static variables and static methods
  • Final variables
  • Inheritance
  • Using super keyword
  • Dynamic Method Dispatch – late binding
  • Abstract method and class
  • Final variable, method and class

Using Java Library :

  • String, StringBuffer classes
  • Math class
  • How Java deals with Objects and Primitive types
  • Object class – why to override toString(), equals() and hashCode() methods
  • Wrapper classes – Autoboxing and autounboxing
  • Date, Calendar, DateFormat classes
  • LocalDate, LocalTime, DateTimeFormatter, ChronoUnit etc.

Interfaces :

  • What is an interface
  • Implementing an interface
  • Default Methods and Static methods in Interface
  • Inheritance and interfaces

Packages :

  • What is a package and how to create it
  • Using package, import statement and CLASSPATH variable
  • Access modifiers
  • Static imports
  • Enumeration

Exception Handling :

  • How to handle exceptions in Java – try and catch blocks
  • Understanding exception classes hierarchy
  • Creating user-defined exceptions
  • Using throws and throw keywords
  • Multi-catch and precise rethrow
  • How to use assertions

Multithreading :

  • What is Multithreading?
  • Creating new thread using subclass of Thread class
  • Creating new thread using Runnable interface
  • Methods of Thread class
  • Life cycle of a thread
  • Synchronization of threads – using synchronized methods and block
  • Using Threadpool

IO Streams :

  • What is an IO stream
  • Character and byte streams
  • FileReader and FileWriter
  • Filtered Streams
  • BufferedReader to read one complete line
  • Using InputStreamReader to convert byte stream to char stream
  • Reading data from keyboard (
  • NIO of Java 7.0 – Files, Path and Paths classes
  • Serialization

 Network Programming :

  • Creating Server Socket
  • Creating Client Socket and connecting to server
  • InetAddress class
  • Using URL class

Collections Framework and Regular Expressions :

  • Collection, List, Set and SortedSet interfaces
  • How to use Generics
  • ArrayList, Vector, HashSet, TreeSet classes
  • How to use Comparator interface
  • Queue interface and LinkedList class
  • Map and SortedMap interfaces
  • HashMap and TreeMap classes
  • Using Collections class
  • What is Regular Expression
  • Using Pattern and Matcher classes

Lambda Expressions and Streams :

  • What is a lambda expression
  • Method reference
  • Using built-in functional interfaces
  • What is a stream
  • How to get a stream from Collection, File, Array etc.
  • Using methods of Stream
  • Terminal and non-terminal streams

New Features of Java 9 :

  • Collection Factory Methods
  • Stream API Improvements
  • Language changes to Java 9
  • jShell
  • Introduction to Java Platform Module System

Swing Applications :

  • How to create Frame-based swing applications
  • Components and layout managers
  • Event Handling – Delegation event model
  • Handling events using adapter class and inner classes
  • Swing components – JRadioButton, JList etc.
  • Using Timer, JScrollPane

Advanced Java Programming :


An Advanced Java Tutorial aimed towards the Developer Who Already has Learned the Fundamentals of Java Programming.

In this Advanced Java Programming training course, expert content provider Infinite Skills builds on the beginners Java course, and goes deeper into programming topics that help you to understand these more advanced Java concepts.

Some of the advanced topics that you will cover in this Advanced Java Tutorialincludes; generic programming, sequential and associative data structures, classic data structures, sorting and searching, exception handling, database programming with JDBC, networking programming GUI development using Swing and an overview of Multithreading.

By the conclusion of this training course, you will have a clear understanding of each of the topics of Advanced Java Programming, which will allow you to go more in-depth with the concepts of your choice.

  • Adding JAR to Local Repository
  • Accessing GitHub.Com Rest API from Spring
  • Getting started with Spring Framework
  • How to use Hibernate + Maven + Oracle in Eclipse
  • How to use Jersey + Jackson + jQuery
  • CRUD Operations with Restful Service in Java
  • How To Change Port Number Of GlassFish Server 4.1
  • REST API for Employees with jQuery client
  • Server in Java, Client in C# and Data in XML
  • Sockets and Serialization in Java(6-Aug-2015)
  • How to fix Tomcat is not recognized problem in Netbeans
  • Streams in Java8
  • Lambda Expressions
  • New Date and Time API in Java8
  • Dictionary Application using Java Swing – Eclipse Version
  • JSON Processing API in Java EE 7.0
  • Twitter Client in Java
  • Upload images from client to BLOB and list images from BLOB
  • Path class and Files class in NIO of Java 7.0