:  +91 8099 133 133 (India)


:  +91 8099 133 133 (India)

Course Description

This course covers advanced features of the Java programming language. Students will learn how to use inheritance, interfaces, exception handling, file input and output, and generic types, and how to incorporate graphical user interfaces (GUIs) into their programming applications. Students will also learn how to apply object-oriented design and programming principles to their programs. Typical assignments and projects include using built-in and programmer-defined classes to develop full-featured, easy-to-use programs. At the end of the course, students submit a comprehensive final examination.


Students should have basic knowledge about programming or have programmed in at least one programming language - preferably C or C++. Some familiarity with Object Oriented Programming is desired but not required.

  • Why should I learn JAVA?
    Java is a high-level, object-oriented programming language developed by Sun Microsystems. Learning Java has its incentives, as it’s a powerful language for developing desktop applications, web applications, and many smart devices run on Java. Java is also a platform-independent programming language, highly portable. If your computer runs on Windows, Linux or Mac OS, they all are same for Java because it runs on virtual machine.
    Java is everywhere, it's on desktop, it's on mobile, it's on card, almost everywhere and so is Java programmers.
    Mobile apps can be developed usins Java. Most of the Big Data tool run on Java.


  • Why only JAVA?
    Java has a very rich API, and an incredible supporting open source ecosystem. There are tools upon tools for just about everything you would like to do. There’s also an amazing community driven process that ensures growth in the right direction.The IDEs available for Java. Due to its strong typing, you’ll not only be notified immediately of errors, but you’ll also be given suggestions that will refactor and reformat your code with clear explanations and extreme ease.


  • Future for JAVA?
    Java is running just about everywhere you can imagine. It’s usually where most large applications end up due to its scalability, stability, and maintainability. There’s also currently a gigantic push in the Java community to be the leader of the IoT (Internet of Things). And it’s coming. Very fast. There’ll be a time in the near future when your alarm clock will automatically start brewing your coffee pot, and it’ll most likely be Java doing that.


  • Job openings for JAVA?
    There are tons of open positions waiting for Java’s widespread reach. Many different sectors embrace the language, and you can be pretty certain you’ll land a job in just about any job market you’d like.
Rating: 8.8/10- 92 reviews
Course Contents

An Overview of Java

  •  Object-Oriented Programming
             a. Two Paradigms
             b. Abstraction
             c. The Three OOP Principles
  • A First Simple Program       
             a. Entering the Program
             b. Compiling the Program                  
             c. A Closer Look at the First Sample Program
  • A Second Short Program
  • Two Control Statements
             a. The if Statement        
             b. The for Loop
  • Using Blocks of Code
  • Lexical Issues
            a. Whitespace
            b. Identifiers
            c. Literals
            d. Comments
            e. Separators
            f. The Java Keywords
  • The Java Class Libraries


Data Types, Variables, and Arrays

  • Java Is a Strongly Typed Language
  • The Primitive Types
  • Integers
               a. byte
               b. short
               c. int
               d. long
  • Floating-Point Types
         a. float
         b. double
  • Characters
  • Booleans
  • A Closer Look at Literals
         a. Integer Literals
         b. Floating-Point Literals
         c. Boolean Literals
         d. Character Literals
         e. String Literals
  • Variables
         a. Declaring a Variable
         b. Dynamic Initialization
         c. The Scope and Lifetime of Variables
  • Type Conversion and Casting
         a. Java’s Automatic Conversions
         b. Casting Incompatible Types
  • Automatic Type Promotion in Expressions
         a. The Type Promotion Rules
  • Arrays
        a. One-Dimensional Arrays
        b. Multidimensional Arrays
        c. Alternative Array Declaration Syntax
  • A Few Words About Strings
  • A Note to C/C++ Programmers About Pointers



  • Arithmetic Operators
        a. The Basic Arithmetic Operators
        b. The Modulus Operator
        c. Arithmetic Compound Assignment Operators
        d. Increment and Decrement
  • The Bitwise Operators
        a. The Bitwise Logical Operators
        b. The Left Shift
        c. The Right Shift
        d. The Unsigned Right Shift
        e. Bitwise Operator Compound Assignments
  • Relational Operators
  • Boolean Logical Operators
        a. Short-Circuit Logical Operators
  • The Assignment Operator
  • The ? Operator
  • Operator Precedence
  • Using Parentheses


Control Statements

  • Java’s Selection Statements
        a. If
        b. switch
  • Iteration Statements
        a. while
        b. do-while
        c. for
        d. The For-Each Version of the for Loop
        e. Nested Loops
  • Jump Statements
        a. Using break
        b. Using continue
        c. return


Introducing Classes

  • Class Fundamentals
        a. The General Form of a Class
        b. A Simple Class
  • Declaring Objects
        a. A Closer Look at new
  • Assigning Object Reference Variables
  • Introducing Methods
        a. Adding a Method to the Box Class
        b. Returning a Value
        c. Adding a Method That Takes Parameters
  • Constructors
        a. Parameterized Constructors
  • The this Keyword
        a. Instance Variable Hiding
  • Garbage Collection
  • The finalize( ) Method
  • A Stack Class


A Closer Look at Methods and Classes

  • Overloading Methods
        a. Overloading Constructors
  • Using Objects as Parameters
  • A Closer Look at Argument Passing
  • Returning Objects
  • Recursion
  • Introducing Access Control
  • Understanding static
  • Introducing final
  • Arrays Revisited
  • Introducing Nested and Inner Classes
  • Exploring the String Class
  • Using Command-Line Arguments
  • Varargs: Variable-Length Arguments
        a. Overloading Vararg Methods
        b. Varargs and Ambiguity



  • Inheritance Basics
        a. Member Access and Inheritance
        b. A More Practical Example
        c. A Superclass Variable Can Reference a Subclass Object
  • Using super
        a. Using super to Call Superclass Constructors
        b. A Second Use for super
  • Creating a Multilevel Hierarchy
  • When Constructors Are Called
  • Method Overriding
  • Dynamic Method Dispatch
        a. Why Overridden Methods?
        b. Applying Method Overriding
  • Using Abstract Classes
  • Using final with Inheritance
        a. Using final to Prevent Overriding
        b. Using final to Prevent Inheritance
  • The Object Class


Packages and Interfaces

  • Packages
        a. Defining a Package
        b. Finding Packages and CLASSPATH
        c. A Short Package Example
  • Access Protection
        a. An Access Example
  • Importing Packages
  • Interfaces
        a. Defining an Interface
        b. Implementing Interfaces
        c. Nested Interfaces
        d. Applying Interfaces
        e. Variables in Interfaces
        f. Interfaces Can Be Extended


Exception Handling

  • Exception-Handling Fundamentals
  • Exception Types
  • Uncaught Exceptions
  • Using try and catch
        a. Displaying a Description of an Exception
  • Multiple catch Clauses
  • Nested try Statements
  • throw
  • throws
  • finally
  • Java’s Built-in Exceptions
  • Creating Your Own Exception Subclasses
  • Chained Exceptions
  • Using Exceptions


Multithreaded Programming

  • The Java Thread Model
        a. Thread Priorities
        b. Synchronization
        c. Messaging
        d. The Thread Class and the Runnable Interface
  • The Main Thread
  • Creating a Thread
        a. Implementing Runnable
        b. Extending Thread
        c. Choosing an Approach
  • Creating Multiple Threads
  • Using isAlive( ) and join( )
  • Thread Priorities
  • Synchronization
        a. Using Synchronized Methods
        b. The synchronized Statement
  • Interthread Communication
        a. Deadlock
  • Suspending, Resuming, and Stopping Threads
        a. Suspending, Resuming, and Stopping Threads
        b. Using Java 1.1 and Earlier
        c. The Modern Way of Suspending, Resuming,
        d. and Stopping Threads
  • Using Multithreading


Enumerations, Autoboxing, and Annotations (Metadata)

  • Enumerations
        a. Enumeration Fundamentals
        b. The values( ) and valueOf( ) Methods
        c. Java Enumerations Are Class Types
        d. Enumerations Inherit Enum
        e. Another Enumeration Example
  • Type Wrappers
  • Autoboxing
        a. Autoboxing and Methods
        b. Autoboxing/Unboxing Occurs in Expressions
        c. Autoboxing/Unboxing Boolean and Character Values
        d. Autoboxing/Unboxing Helps Prevent Errors
        e. A Word of Warning
  • Annotations (Metadata)
        a. Annotation Basics
        b. Specifying a Retention Policy
        c. Obtaining Annotations at Run Time by Use of Reflection
        d. The AnnotatedElement Interface
        e. Using Default Values
        f. Marker Annotations
        g. Single-Member Annotations
        h. The Built-In Annotations
        i. Some Restrictions


I/O, and Other Topics

  • I/O Basics
    a. Streams
    b. Byte Streams and Character Streams
    c. The Predefined Streams
  • Reading Console Input
        a. Reading Characters
        b. Reading Strings
  • Writing Console Output
  • The PrintWriter Class
  • Reading and Writing Files
  • The transient and volatile Modifiers
  • Using instanceof
  • Strictfp
  • Native Methods
        a. Problems with Native Methods
  • Using assert
        a. Assertion Enabling and Disabling Options
  • Static Import
  • Invoking Overloaded Constructors Through this( )



  • What Are Generics?
  • A Simple Generics Example
        a. Generics Work Only with Objects
        b. Generic Types Differ Based on Their Type Arguments
        c. How Generics Improve Type Safety
  • A Generic Class with Two Type Parameters
  • The General Form of a Generic Class
  • Bounded Types
  • Using Wildcard Arguments
        a. Bounded Wildcards
  • Creating a Generic Method
        a. Generic Constructors
  • Generic Interfaces
  • Raw Types and Legacy Code
  • Generic Class Hierarchies
        a. Using a Generic Superclass
        b. A Generic Subclass
        c. Run-Time Type Comparisons Within a Generic Hierarchy
        d. Casting
        e. Overriding Methods in a Generic Class
  • Erasure
        a. Bridge Methods
  • Ambiguity Errors
  • Some Generic Restrictions
        a. Type Parameters Can’t Be Instantiated
        b. Restrictions on Static Members
        c. Generic Array Restrictions
        d. Generic Exception Restriction
  • Final Thoughts on Generics



  • Introduction to JDBC
  • JDBC drivers
  •  Java.sql package
  • Data Base Connecting Steps
  • Statement
  • PreparedStatement
  •  CallableStatement
  •  ResultSet
  •  Bi-Directional Statement
  •  Batch update.
  • Transaction Management
  •  Jdbc New features.



  • Connection Pool



  •  What is Web Application
  •  CGI
  •  Servlet
  •  Web Server , Web Container
  •  HTTP protocol
  •  GenericServlet
  •  HttpServlet
  •  Servlet Life Cycle
  • Servlet Work Flow
  •  How to create War file
  •  How to develop a Servlet in Eclipse , Myeclipse
  •  GET AND POST request
  •  ServletConfig ,ServletContext
  •  Attribute in Servlet
  •  RequestDispatcher
  •  Session Tracking
  •  Hidden Form Field
  •  Cookie
  •  HttpSession
  •  URL Rewriting
  •  Filters
  • Annotation  Servlet
  • SingleThreadModel
  •  How to develop an application by using servet.



  • JSP  over Servlet
  • JSP  API
  • Procedure how to write JSP application
  • Life Cycle of JSP
  • JSP in eclipse
  • JSP  Scripting Elements
  • Implicit Object 
  • JSP Directive Elements
  • JSP Exception
  • Action Elements
  • Expression Language
  •  JSTL
  • JSP Custom tag
  • MVC
  • Develop an application by using JSP
  • Develop an application by using MVC



  • Advantage of Hibernate compared to JDBC
  • Hibernate Introduction
  • Hibernate Architecture
  • ORM(Object Relational Mapping)
  • Hibernate Resource
  • Hibernate configuration file
  • Hibernate mapping file
  • POJO(plain old java object class)
  • Hibernate API
  • Understanding First Hibernate application
  • Hibernate in Eclipse and MyEclipse
  • Hibernate application with CURD operation
  • save ,persist,SaveOrUpdate
  • update , merge,delete
  • load,get
  • flush,evict,clear etc
  • Primary key generators
  • assigned
  • increment
  • sequence
  • hilo
  • identity
  • foreign etc…
  • Hibernate Query Language
  • Native SQL
  • Criteria API
  • Hibernate Inheritance
  • Table per class
  • Table per sub class
  • Table per concrete class
  • Caching
  • First level cache(Session cache)
  • Second level cache(SessionFactory cache)
  •  Relation
  • One to  One
  • One to  Many
  • Many to Many
  • Uni directional
  • Bi directional
  • Connecting with multiple database
  • Integrating Hibernate with Servlet
  • Integrating Hibernate with Struts
  • Integrating Hibernate with Spring
  • Working with  Hibernate Annotations



Struts 1.x

  • Local Exceptions and Global Exceptions
  • Local Forwards and Global Forwards
  • Exception Handling in Struts
  • DynaValidatorActionForm
  • ValidatorActionForm
  • DynavalidatorForm
  • ValidatorForm
  • DynaActionForm
  • ActionForm
  • Different types of Forms
  • By using validate() method.
  • Server side Validations
  • Client side Validations
  • Validations in Struts
  • Detailed explanation of struts request processing flow
  • Struts configuration file
  • Action class
  • ActionForm
  • Web.xml
  • ActionServlet
  • Struts Resource
  • Different type of application
  • Different Layers in application
  • Presentation layer
  • Business Layer
  • Data Storage & Access Layer
  • System Architecture
  • 1 tier architecture
  • 2 tier architecture
  • 3 tier architecture
  • Web application model
  • Model1 architecture
  • Model2 architecture
  • Struts Introduction
  • Struts Architecture
  • Struts predefined Tag libraries
  • HTML Tag library
  • Bean Tag library
  • Logic Tag library
  • Nested Tag library
  • Tiles Tag library
  • Predefine Action classes
  • Forward Action
  • Include Action
  • DispatchAction
  • LookupDispatchAction
  • MappingDispatchAction
  • SwitchAction
  • LocaleAction
  • DownloadAction
  • EventDispatchAction
  • I18N

Struts 2.x

  • Struts 2 introduction
  • Struts2 features
  • Struts2 example
  • Struts2 in MyEclipse
  • Core component

o  Interceptors

o  ValueStack

o  ActionContext

o  ActionInvocation


  • Struts2 Architecture
  • Struts2 Action
  • Struts configuration
  • struts.xml file
  • Interceptors
  • Custom Interceptor
  • Params Interceptor
  • execAndWait
  • prepare interceptor
  • modelDriver interceptor
  • exception interceptor
  • fileUpload interceptor
    • Struts 2 Validation
    • Aware Interfaces
  • ServletActionContext
  • SessionAware
  • ServletContextAware
  • Struts2 with I18N
  • Zero configuration
  • By convention
  • By annotation
    • Struts2 with Tiles2


  • Spring Introduction
  • Spring modules
  • Spring Application
  • Spring in MyEclipse
  • Spring in Eclipse
  • Spring Core Module
    • Dependency Injection
  • IOC Container
  • Dependency Injection
  • Constructor Injection
  • CI Dependent Object
  • CI with Collection
  • CI with Map
  • CI with inheriting Bean
  • Setter Injection
  • SI Dependent Object
  • SI with Collection
  • SI with Map
  • CI vs SI
  • Autowiring


Spring AOP

  • AOP concept
  • Spring 1.2 AOP DTD
  • SP AspectJ Annotation
  • SP AspectJ XML
  • Spring JdbcTemplate
  • JdbcTemple
  • PreparedStatement
  • ResutlSetExtractor
  • RowMapper
  • NamedParmeter
  • SimpleJdbcTemplate
    •  Spring ORM
  • Spring with ORM
  • Spring with Hibernate
  • Spring with  JPA
    •   Spring MVC
  • Spring MVC
  • Multiple Controller


Write a Review