Home » Advanced Java Training

Advanced Java Training

This is a 5 week course specially designed for software developers with little or no exposure to Java programming language. On completion, attendees would be able to:

  • Master Object Oriented concepts and O-O programming with Java
  • Master Java syntax and semantics, class declarations, package concepts
  • Develop I/O based programs, object serialization
  • Master exception handling
  • Master concurrence techniques
  • Master generics

Prerequisites

None

Curriculum

  1. Object-Oriented Programming Concepts

    • What is an Object?
    • What is a Class?
    • Inheritance
    • Encapsulation
    • Polymorphism
  2. Language Basics

    • Primitive Types
    • Arrays
    • Operators
    • Assignment, Arithmetic and Unary Operators
    • Equality, Relational and Conditional Operators
    • Bitwise and Shift Operators
    • Control Flow Statements
    • if-then, if-then-else statements
    • while, do-while statements
    • for statement
    • Branching statements
    • switch statement
  3. Classes and Objects

    • Declaring Classes
    • Declaring Member Variables
    • Defining Methods
    • Constructors
    • Message passing
    • Returning messages
    • this keyword
    • Access Modifiers
    • Initialization
    • Nested Classes
    • Enums
    • Annotations
  4. Inheritance and Interfaces

    • Defining Interface
    • Implementing Interfaces
    • Overriding
    • super Keyword
    • Final Classes
    • Abstract Classes
  5. Numbers, Characters and Strings

    • Number classes
    • Formatting
    • Manipulating Strings
    • StringBuilder
  6. Packages

    • Creating Packages
    • Naming a Package
    • Package Members
    • Importing classes
  7. Generics

    • Types
    • Type Erasure
    • Generic Methods and Constructors
    • Bounded Types
    • Subtyping
    • Wildcards
    • Type Erasure
  8. Exception Handling

    • What is an Exception?
    • try Block
    • try-catch Block
    • finally Block
    • Throwing Exceptions
    • Chaining Exceptions
    • Checked/Unchecked Exceptions
    • Creating Exception Classes
    • Error Classes
  9. Basic I/O

    • I/O Streams – Byte, Character, Buffered
    • Scanning
    • Formatting
    • Data Streams
    • Object Streams
    • Readers and Writers
    • Random Access File
    • New I/O Classes
    • Buffers
    • Channels
  10. Collections

    • Collection Interface
    • Set Interface
    • List Interface
    • Queue Interface
    • Map Interface
    • Object Ordering
    • Implementations
    • Algorithms
    • Custom Collection Implementations
  11. Advanced Concepts

  12. Concurrency

    • Processes and Threads
    • Thread and Runnable
    • Starting a Thread
    • Pausing a thread
    • Interrupts
    • Joins
    • Synchronization
    • Intrinsic Locks
    • Atomic Access
    • Deadlock
    • Livelock
    • Gaurded Blocks
    • Lock Objects
    • Executors
    • Thread Pools
    • Atomic Variables
    • Concurrent Collections
    • ThreadLocal Objects
  13. Networking

    • What is a Socket?
    • TCP/IP and UDP
    • Datagram
    • Reading from a Socket
    • Writing to a Socket
    • Broadcasting
    • ServerSockets
    • Writing a client Server Application
    • Working with URLs
    • Network Interface Addresses
  14. JDBC

    • JDBC Architecture
    • Relational Database Overview
    • Setting up a Database (MySQL)
    • Connecting to a Database
    • SQL
    • Retrieving data from Result Sets
    • Updating Tables
    • Prepared Statements
    • Joins
    • Transactions
    • Stored Procedures
    • Building a complete JDBC Application
  15. JNDI

    • Overview of JNDI
    • Looking up a Resource
    • JNDI Context
    • Add, Replace or Remove a Binding
    • Subcontexts
  16. Remote Method Invocation (RMI)

    • Distributed Computing
    • Remote Interface
    • Serialization
    • Implementing a Remote Interface
    • Remote Client
    • Security
    • RMI Registry
  17. Java Management Extensions (JMX)

    • What is JMX?
    • JMS Architecture
    • Standard MBeans
    • MXBeans
    • Notifications
    • JMX Connectors
  18. Regular Expressions

    • String Literals
    • Character Classes
    • Predefined classes
    • Groups
    • Matchers
    • Boundary Matchers
    • Pattern Class
  19. Reflection

    • Examining Class Objects
    • Examining Class Modifiers
    • Getting and Setting Field Values
    • Obtaining Method Type Information
    • Invoking Methods
    • Retrieving and Parsing Constructors
    • Creating New Class Instances
    • Creating New Arrays
    • Creating Enumerated Types
  20. Swing

    • What is Swing?
    • Look and Feel
    • Components, Panels, Windows, Buttons
    • ActionListeners
    • Layouts
    • Graphics
    • Integrating with Desktop
    • Creating System Tray Icon

Please check here for pricing information.