0845 450 6120

Java Programming

This Java Programming course focuses on the fundamentals of the Java language, object oriented development and the structure of Java applications. It covers the Java Platform up to version 8.

This hands-on course shows delegates how to develop Java systems that use various core API packages. They will develop programs that support multi-threading and networking. Java has always been associated with GUI development and this course allows delegates to develop graphical applications using JafaFX. They also learn how to access databases and deploy applications.

Who will the Course Benefit?

This Java Programming course is aimed at anyone who needs to learn how to develop in Java.

We don't currently have any courses listed for Java Programming, would you like to view all courses for Programming?

Learning Objectives

By the end of the course delegates should be able to:

  • Explain the Java architecture
  • List and describe the standard Java packages in various versions
  • Choose between various design strategies
  • Understand the benefits of design patterns
  • Create, build, and debug Java projects
  • Build and release Java applications
  • Store objects using Java's Collection framework
  • Write robust applications using Exception handling
  • Perform a variety of I/O using Stream and File classes
  • Format strings, dates and numbers
  • Use Java localisation features
  • Develop GUI systems using JavaFX classes
  • Raise and respond to events
  • Create Java programs with concurrent threads
  • Create Network aware applications
  • Access databases using JDBC

Pre-Requisites

Fundamentals of Java Programming

Course Content

Course Introduction

  • Administration and Course Materials
  • Course Structure and Agenda
  • Delegate and Trainer Introductions

Session 1: INTRODUCING JAVA

  • The Java Development Environment
  • The Java Runtime Environment
  • Licensing and OpenJDK
  • Compiling and Executing Java Programs
  • Java Program types
  • Java SE and Java EE
  • Integrated Development Environments

Session 2: THE JAVA LANGUAGE

  • Variables
  • Data Types
  • Primitive and Reference Variables
  • Declaring, Initializing and Releasing Variables
  • Arithmetic and Comparison Operators
  • Shortcut Operators
  • Short-Circuit Operators
  • Shift Operators
  • Converting Data Types
  • Statements and Semi-Colons
  • IF ... ELSE and SWITCH CASE statements
  • Loops
  • Comments
  • Arrays

Session 3: OBJECTS AND CLASSES

  • Objects
  • Encapsulation
  • Classes
  • Methods
  • Strings
  • Packages
  • Class Member Data
  • Defining and Using Constructors
  • Static Initializers
  • Static Imports
  • Garbage Collection
  • Object Lifetime
  • Wrapper Classes
  • Enumerations
  • Inner Classes, Named, Static and Anonymous

Session 4: INHERITANCE

  • Classes and Inheritance
  • Methods in the Sub Class
  • Constructors
  • Polymorphism
  • Final Classes
  • Protected Modifier
  • Super keyword and Object class
  • Converting Reference Types

Session 5: ABSTRACT CLASSES AND INTERFACES

  • Abstraction
  • Abstract Classes
  • Abstract Class References
  • Abstract Methods
  • Abstraction Rules and Guidelines
  • Interfaces
  • Defining and Implementing an Interface
  • Type Conversions and Interfaces
  • Lambda Expressions

Session 6: DESIGN CONSIDERATIONS

  • Composition
  • Method Delegation
  • Introduction to Design Patterns
  • Pattern Examples - Delegate, Singleton, DAO and Decorator

Session 7: GENERICS AND ANNOTATIONS

  • User defined Annotations
  • Built in Annotations
  • Generics
  • The Enhanced FOR Loop
  • Variable Method Arguments
  • Auto Boxing

Session 8: COLLECTIONS

  • The java.util and java.util.stream Packages
  • Iterator
  • Lists
  • Maps
  • Sets
  • Stack and Deque
  • Diamond Syntax (Type Inference)
  • How to Choose a Collection Class

Session 9: EXCEPTIONS AND ASSERTIONS

  • Syntax Errors
  • Runtime Errors
  • Logical Errors
  • Exception Handling
  • Exception Objects
  • Handling Exceptions
  • Try-with-resources
  • Multi-catch
  • User-Defined Exception Classes
  • Exception Handling Guidelines
  • Assertions

Session 10: FORMATTING STRINGS, DATES AND NUMBERS

  • String Immutability
  • String Class Methods
  • The StringBuffer and StringBuilder Classes
  • Text Input and Parsing
  • Text Formatting
  • Using Regular Expressions
  • Date Formatting
  • Calendar and java.time package
  • Number Formatting
  • Localization
  • Resource Bundles

Session 11: CREATING GUIS WITH JAVAFX

  • JAVAFX Overview
  • Create a JAVAFX GUI
  • Event handling
  • Using Scene Builder
  • Visual effects
  • Model View Controller (MVC) Design Pattern

Session 12: FILE AND NETWORK INPUT/OUTPUT

  • Byte Oriented Input and Output Streams
  • Decoration
  • Character Oriented Streams
  • Standard I/O Streams
  • Examples Using I/O Streams
  • Java and URLs
  • Handling Files and Directories
  • The Path Interface
  • Files and Paths class and java.nio.file package
  • Reading and Editing Files
  • Monitoring with WatchService

Session 13: OBJECT SERIALIZATION

  • Introduction
  • Examples
  • Serialization Issues
  • The Externalizable Interface
  • Version Serialized Files

Session 14: THREADS AND CONCURRENCY

  • What are Threads?
  • Creating Threads
  • Implementing the Runnable Interface
  • Synchronizing Access to Resources
  • Communicating Between Threads
  • Immutable Objects
  • Using the java.util.concurrency Package
  • Executors and ThreadPools

Session 15: DATABASE CONNECTION WITH JDBC

  • The JDBC API
  • Adding JDBC Libraries
  • Registering the JDBC Driver
  • Connecting to the Database
  • Creating and Executing Statements
  • The PreparedStatement and CallableStatement Classes
  • Using RowSet Classes
  • Implementing the Data Access Object Pattern

Session 16: DEPLOYMENT WITH JAR, EAR AND WAR FILES

  • Creating Jar Files
  • The Jar Manifest
  • WAR Files
  • EAR Files

Exams & Certification

This Java Programming helps delegates to prepare for either of the two following exam tracks:

The Java SE 8 Programmer II (1Z0-809) Exam which leads to the Java SE 8 Oracle Professional(OCP) certification.

The Java SE7 Programmer II exam (1ZO-804) which leads to the Oracle Certified Professional, Java SE 7 Programmer certification (OCPJP).

These qualifications replace the Sun Certified Java Programmer (SCJP).

Before taking any exam, ensure you have the recommended experience. The Oracle Corporation website lists all exam requirements and these are updated regularly.

Exams are not included as part of the course.

One Month
Two Months
Three Months
More than Three Months
PRINCE2 Foundation & Practitioner
MSP Foundation & Practitioner
APMP Certificate
ITIL Foundation
Scrum in One Day
Certified ScrumMaster
ISTQB Software Test Foundation
Microsoft Project
BCS Business Analysis Practice
Other - Please Specify Below

Online Courses

You may prefer an online course if you are looking for a flexible and cost-effective solution. Online courses allow you to study at your own pace, at a time that suits you.

We have the following eLearning options available:

Our Customers Include