Beginning Java Application Development training course teaches the necessary Java skills needed to successfully write basic applications in Java.

Java Training Objectives

All students will:

  • Understand Java’s importance, uses, strengths and weaknesses

  • Understand Java language basics

  • Write, compile, and run Java programs

  • Understand the Object Model and Object Oriented Programming

  • Use classes, inheritance, polymorphism

  • Create well designed classes and use them in your Java programs

  • Use composition and delegation to create objects from other objects

  • Use packages to organize code

  • Understand interfaces, their importance, and their uses

  • Use interfaces to implement abstraction

  • Learn good Java coding style

  • Create well-structured Java programs

  • Compile and execute programs with the JDK development tools and with an Integrated Development Environment (IDE) of your choice

  • Use the core Java libraries (java.lang, java.util)

  • Use exceptions for error handling

  • Understand the basics of using JDBC and JPA, and use them to access databases from Java

  • Use the Java Collections Framework

  • Be aware of, and use the new features of Java 8 (if using Java 1.8 or later) , as well as important advanced features of earlier Java versions

  • Use basic I/O streams (Optional)

Week 1




  • Introduction

  • A First Look

    • A Simple Java Class

    • Java’s “Hello World” Program



  • Java Basics

    • Language and Platform Features

    • Program Life Cycle

    • The Java SE Development Kit (JDK)

    • Working with the Development Environment



  • Class and Object Basics

    • The Object Model and Object-Oriented Programming

    • Classes, References, and Instantiation

    • Adding Data to a Class Definition

    • Adding Methods (Behavior)




Week-2




  • More on Classes and Objects

    • Accessing data, the "this" variable

    • Encapsulation and Access Control, public and private Access

    • Constructors and Initialization

    • static Members of a Class

    • Scopes, Blocks, References to Objects



  • Flow of Control

    • Branching: if, if-else, switch

    • Iteration: while, do-while, for, break, continue



  • Strings and Arrays

    • String, StringBuffer, StringBuilder

    • Arrays, Primitive Arrays, Arrays of Reference Types

    • Varargs



  • Packages

    • Package Overview - Using Packages to Organize Code

    • import statements

    • Creating Packages, package Statement, Required Directory Structure

    • Finding Classes, Packages and Classpath




Week-3-4




  • Composition and Inheritance

    • Using Composition to Deal With Complexity

    • Composition/HAS-A, Delegation

    • Using Inheritance and Polymorphism to share commonality

    • IS-A, extends, Inheriting Features, Overriding Methods, Using Polymorphism

    • Class Object

    • Abstract Classes



  • Interfaces

    • Using Interfaces to Define Types

    • Interfaces and Abstract Classes

    • Default Methods and static Methods (Java 1.8 or later only)

    • Using Interfaces to Remove Implementation Dependencies



  • Exceptions

    • Exceptions and the Exception Hierarchy

    • try and catch

    • Handling Exceptions

    • Program Flow with Exceptions

    • Finally



  • Java Collections and Generics

    • The Collections Framework and its API

    • Collections and Java Generics

    • Collection, Set, List, Map, Iterator

    • Autoboxing

    • Collections of Object (non-generic)

    • Using ArrayList, HashSet, and HashMap

    • for-each Loop

    • Processing Items With an Iterator

    • More About Generics




Week-5




  • Database Access with JDBC and JPA

    • JDBC Overview

      • Using DriverManager, Connection, Statement and ResultSet

      • JDBC Architecture and API



    • JPA Overview

      • JPA Architecture and Programming View

      • Entity Classes and Annotations

      • Mapping an Entity Class

      • EntityManagerFactory and EntityManager

      • Working with JPA (Find by primary key and inserts)






Week-6




  • Additional Java Features

    • Assertions

    • Type-safe Enums

    • Annotations

    • Lambda Expressions and Method References (Java 1.8 or later only)

    • Additional Features



  • ​​I/O Streams (Optional)

    • Readers and Writers

    • Filter Streams

    • Byte Streams

    • Formatted Output

    • New I/O (NIO) APIs



  • Conclusion