Java Private Self-Paced

Java Certification Training (JVA103)

Course Length: 5 days

Embark on your Java learning journey with our Java Certification Training designed to provide you and your team with robust programming skills.

Java Certification Training

Register or Request Training

  • Private class for your team
  • Live expert instructor
  • Online or on‑location
  • Customizable agenda
  • Proposal turnaround within 1–2 business days
Price per student
$349.65 or 7 vouchers
  • On Demand 24/7
  • Readings, Video Presentations, Exercises
  • Quizzes to knowledge check
  • Life-Time Access

Course Overview

Embark on your Java learning journey with our Java Certification Training designed to provide you and your team with robust programming skills. Whether you're starting from scratch or brushing up on fundamentals, this course offers a strong foundation in Java, one of the most popular and versatile programming languages used worldwide.

Your exploration begins with a solid Java Introduction. Here, you'll familiarize yourself with the Java environment, learn how to write and run simple Java programs, and discover the power of using an Integrated Development Environment. You’ll also practice using Java documentation, a skill that will benefit you throughout your coding journey.

Dive into the heart of programming with lessons on Java Basics. Uncover the building blocks of Java by exploring variables, data types, constants, and fundamental mathematical operations. You'll also get hands-on experience in creating and using methods while understanding variable scope and practicing through method exercises.

Advance your understanding with Java Objects, unlocking the world of object-oriented programming. You'll learn about defining classes, constructing objects, and employing access terms, all while maintaining best practices for fields and methods. This section covers essential concepts like constructors, overloading, and static elements, providing practical exercises to reinforce learning.

The course covers Comparisons and Flow Control Structures, essential for designing logical and flexible code. You'll develop skills in boolean expressions, comparison operators, and conditional flows such as if statements and loops. Test your knowledge with projects like creating a guessing game or modifying a payroll application.

Next, the focus shifts to Arrays, where you will understand their instantiation, initialization, and application. Engage with exercises on one-dimensional and multi-dimensional arrays, exploring enhanced for-loops and array typecasting to effectively organize and manipulate data.

Delve into Inheritance, a cornerstone of Java programming, allowing for code reuse and enhancement through polymorphism. Learn to create subclasses, explore inheritance-related keywords, and use them in practical Payroll projects, enhancing your coding efficiency.

The power of Interfaces is explored next, offering a way to implement multiple inheritance. You'll create and implement interfaces, understand reference variables, and discover uses for interfaces, solidifying your comprehension with exercises and annotations.

Master Exceptions with an understanding of error handling, from try-catch blocks to throwing exceptions. You'll create your own exception classes and handle complex exception scenarios, ensuring robust and error-free code.

Explore Collections, a fundamental concept for managing groups of objects. Learn to use collection classes, work with iterators, and understand generics, all while applying newfound skills in Payroll and Streams projects to manage data effectively.

Venture into Inner Classes, encompassing code organization and structural improvement techniques. Through lessons on syntax, use cases, and anonymous classes, you'll enhance your understanding of Java internals.

The course also introduces Streams for managing data input and output. Explore stream classes, work with binary data, and implement serialization, empowering you to efficiently manage files and data streams.

Conclude with Advanced Topics such as concurrency, JDBC, and security. These lessons provide a glimpse into more complex Java features and their applications, supporting a well-rounded growth path in Java proficiency.

Upon course completion, you’ll have the skills needed to confidently develop Java applications, utilize object-oriented principles, handle exceptions, and implement advanced features. This training will significantly enhance both individual and team capabilities, ensuring readiness for advanced Java pursuits in a professional setting.

This course helps prepare students for the Oracle Certified Professional: Java SE 21 Developer (1Z0-830) certification exam (or any of the earlier exams), which is the only exam needed to become an 
Oracle Certified Professional: Java SE 21 Developer.

Course Benefits

  • Learn how Java works.
  • Understand the "write once, run anywhere" concept.
  • Understand and learn how to create basic Java objects.
  • Learn how to implement flow-control concepts in Java.
  • Understand Java's package concept and create packages of Java classes.
  • Understand Java arrays and write code to create and use arrays.
  • Learn how to write Java classes using inheritance.
  • Learn how to create and use interfaces.
  • Understand and use the concept of polymorphism in an application
  • Understand how Java's exception-handling mechanism works and learn how to apply exception-handling to Java applications.
  • Understand and use the Java Logging API.
  • Understand and use inner classes.
  • Learn to use Generics with Collections.
  • Learn to use Lambda Expressions to process Java Streams.
  • Learn about Java's IO and NIO Streams, and how to apply that to files using text and binary data.
  • Learn about Concurrency, JDBC, Localization, Security, and Modules.

Delivery Methods

Private Class
Delivered for your team at your site or online.
Self-Paced
Learn at your own pace with 24/7 access.

Course Outline

  1. Java Introduction
    1. Conventions in These Notes
    2. The Java Environment - Overview
    3. Writing a Java Program
    4. Obtaining The Java Environment
    5. Setting Up Your Java Environment
    6. Creating a Class that Can Run as a Program
    7. Printing to the Screen
    8. Using an Integrated Development Environment
    9. Running a Simple Java Program (Exercise)
    10. Using the Java Documentation
  2. Java Basics
    1. Basic Java Syntax
    2. Variables
    3. Data
    4. Constants and the final Keyword
    5. Mathematics in Java
    6. Creating and Using Methods
    7. Variable Scope
    8. Method Exercise (Exercise)
  3. Java Objects
    1. Object-oriented Languages
    2. Object Definition (Exercise)
    3. References
    4. Defining a Class
    5. More on Access Terms
    6. Adding Data Members to a Class
    7. Standard Practices for Fields and Methods
    8. Java Beans
    9. Bean Properties
    10. Payroll01: Creating an Employee Class (Exercise)
    11. Constructors
    12. Instantiating Objects Revisited
    13. Important Note on Constructors
    14. Payroll02: Adding an Employee Constructor (Exercise)
    15. Method Overloading
    16. Payroll03: Overloading Employee Constructors (Exercise)
    17. The this Keyword
    18. Using this to Call Another Constructor
    19. Payroll04: Using the this Reference (Exercise)
    20. static Elements
    21. The main Method
    22. Payroll05: A static Field in Employee (Exercise)
    23. Garbage Collection
    24. Java Packages
    25. Compiling with Packages
    26. Working with Packages
    27. Payroll06: Creating an employees Package (Exercise)
    28. Variable Argument Lists (varargs)
    29. Payroll07: Using KeyboardReader in Payroll (Exercise)
    30. Creating Documentation Comments and Using javadoc
    31. Payroll08: Creating and Using javadoc Comments (Exercise)
    32. Primitives and Wrapper Classes
  4. Comparisons and Flow Control Structures
    1. Boolean-valued Expressions
    2. Comparison Operators
    3. Comparing Objects
    4. Conditional Expression Examples
    5. Complex boolean Expressions
    6. Simple Branching
    7. The if Statement
    8. if Statement Examples
    9. Payroll-Control01: Modified Payroll (Exercise)
    10. Two Mutually Exclusive Branches
    11. Comparing a Number of Mutually Exclusive Options - The switch Statement
    12. Comparing Two Objects
    13. Conditional Expression
    14. Payroll-Control02: Payroll with a Loop (Exercise)
    15. Additional Loop Control: break and continue
    16. Continuing a Loop
    17. Classpath, Code Libraries, and Jar Files
    18. Creating and Using an External Library (Exercise)
    19. Compiling to a Different Directory
  5. Arrays
    1. Defining and Declaring Arrays
    2. Instantiating Arrays
    3. Initializing Arrays
    4. Working with Arrays
    5. Enhanced for Loops - the For-Each Loop
    6. Array Variables
    7. Copying Arrays
    8. Using the args Array (Exercise)
    9. Arrays of Objects
    10. Payroll-Arrays01: An Array of Employees (Exercise)
    11. Multi-Dimensional Arrays
    12. Multidimensional Arrays in Memory
    13. Example - Printing a Picture
    14. Typecasting with Arrays of Primitives
  6. Inheritance
    1. Payroll with Inheritance
    2. Polymorphism
    3. Creating a Subclass
    4. Inheritance and Access
    5. Inheritance and Constructors - the super Keyword
    6. Example - Factoring Person Out of Employee
    7. Payroll-Inheritance01: Adding Types of Employees (Exercise)
    8. Inheritance and Default Superclass Constructors
    9. Typecasting with Object References
    10. More on Overriding
    11. Payroll-Inheritance02: Using the Employee Subclasses (Exercise)
    12. Other Inheritance-related Keywords
    13. Payroll-Inheritance03: Making Our Base Classes Abstract (Exercise)
    14. Methods Inherited from Object
  7. Interfaces
    1. Creating an Interface Definition
    2. Implementing Interfaces
    3. Reference Variables and Interfaces
    4. Interfaces and Inheritance
    5. Exercise: Payroll-Interfaces01 (Exercise)
    6. Some Uses for Interfaces
    7. Annotations
    8. Using Annotations
  8. Exceptions
    1. Handling Exceptions
    2. Exception Objects
    3. Attempting Risky Code - try and catch
    4. Guaranteeing Execution of Code - The finally Block
    5. Letting an Exception be Thrown to the Method Caller
    6. Throwing an Exception
    7. Payroll-Exceptions01: Handling NumberFormatException in Payroll (Exercise)
    8. Payroll-Exceptions01, continued (Exercise)
    9. Exceptions and Inheritance
    10. Creating and Using Your Own Exception Classes
    11. Payroll-Exceptions02 (Exercise)
    12. Rethrowing Exceptions
    13. Initializer Blocks
    14. Logging
    15. Log Properties
    16. Assertions
  9. Collections
    1. Collections
    2. Using the Collection Classes
    3. Using the Iterator Interface
    4. Creating Collectible Classes
    5. Generics
    6. Bounded Types
    7. Extending Generic Classes and Implementing Generic Interfaces
    8. Generic Methods
    9. Variations on Generics - Wildcards
    10. Type Erasure
    11. Multiple-bounded Type Parameters
    12. Payroll-Collections01: Payroll Using Generics (Exercise)
    13. Working with Streams and Lambda Expressions
  10. Inner Classes
    1. Inner Classes, aka Nested Classes
    2. Inner Class Syntax
    3. Instantiating an Inner Class Instance from within the Enclosing Class
    4. Inner Classes Referenced from Outside the Enclosing Class
    5. Referencing the Outer Class Instance from the Inner Class Code
    6. Better Practices for Working with Inner Classes
    7. Enums
    8. Process Payroll Records (Exercise)
  11. Streams
    1. Introducing Streams
    2. Input Stream Classes
    3. Output Stream Classes
    4. Using System.in
    5. File and Directory Information
    6. Creating a Directory Listing (Exercise)
    7. Files and Streams
    8. Creating a File Copying Program (Exercise)
    9. Dealing with Binary Data
    10. Java Primitives as Binary Data
    11. Sending and Receiving Objects - Serialization
    12. Payroll-Streams01 (Exercise)
    13. Properties
    14. Java NIO
  12. Advanced Topics
    1. Concurrency
    2. JDBC
    3. Localization
    4. Security
    5. Modules
    6. Date-Time API

Class Materials

Each student receives a comprehensive set of materials, including course notes and all class examples.

Class Prerequisites

Experience in the following would be useful for this Java class:

  • Object-oriented Programming Experience in a language such as C++ or C#.

Have questions about this course?

We can help with curriculum details, delivery options, pricing, or anything else. Reach out and we’ll point you in the right direction.