Java Beginner (Covering OCA)

R10,995.00

This Beginner Java Training Course will you the fundamentals of the Java Programming Language with an emphasis on OO. This course is aligned with the Oracle Certified Associate in Java Fundamentals Certification.

Category: Tag:
Product Description

This Beginner Java Training Course will you the fundamentals of the Java Programming Language with an emphasis on OO. This course is aligned with the Oracle Certified Associate in Java Programming Certification.

Prerequisites  / Further Training

You should not be a complete beginner for this course. If you cannot pass this test, you must do Intro To Programming Course first.

Alignment

OCA: Oracle Certified Associate Java SE 8 Fundamentals Exam 1Z0-808

Intended Audience

  • Intended for people who have some knowledge of programming and want to learn Java and OO
  • NB: This is NOT an Introduction to Programming course.

After this course, you should be able to

  • Have a good understanding of programming and the building blocks of an OO programming language, with an emphasis on JAVA. Prepare for Oracle OCA Exam 1Z0-803
  • Use Java programming language constructs to create a Java technology application.
  • Use decision and looping constructs and methods to dictate program flow.
  • Understand basic object-oriented concepts such as inheritance, encapsulation, and abstraction.
  • Use and manipulate object references, and to write simple error handling code.
  • Use the new SE 8 java.time and java.time.format packages to format and print the local date and time.
  • Specify a data modification by passing a predicate lambda expression to the Collections class.
  • Proceed to practical training that assumes OO knowledge like Advanced Java, Angular, React and more

Course Material

Course Material Provided

Course Contents

1 Introduction

  • Audience
  • Introductions
  • Course Objectives
  • Schedule
  • Lesson Format
  • Course Environment
  • How Do You Learn More After the Course?
  • Additional Resources
  • Summary

2 What Is a Java Program?

  • Objectives
  • Topics
  • Purpose of a Computer Program
  • Translating High-Level Code to Machine Code
  • Linked to Platform-Specific Libraries
  • Platform-Dependent Programs
  • Topics
  • Key Features of the Java Language
  • Java Is Platform-Independent
  • Java Programs Run In a Java Virtual Machine
  • Procedural Programming Languages
  • Java Is an Object-Oriented Language
  • Topics
  • Verifying the Java Development Environment
  • Examining the Installed JDK: The Tools
  • Topics
  • Compiling and Running a Java Program
  • Compiling a Program
  • Executing (Testing) a Program
  • Output for a Java Program
  • Exercise 2-1
  • JDK 11: Launch Single-File Source-Code Programs
  • Exercise 2-2

3 Creating a Java Main Class

  • Objectives
  • Topics
  • Java Classes
  • Program Structure
  • Java Packages
  • Java IDEs
  • The NetBeans IDE
  • Creating a Java Project
  • Creating a Java Class
  • Exercise 3-1:Creating a New Project and Java Class
  • Opening an Existing Java Project
  • Creating a New Java Package
  • Topics
  • The main Method
  • A main Class Example
  • Output to the Console
  • Avoiding Syntax Errors
  • Compiling and Running a Program by Using NetBeans
  • Exercise 3-2: Creating a main Method

4 Data in a Cart

  • Objectives
  • Topics
  • Variables
  • Variable Types
  • Naming a Variable
  • Java SE 9: The Underscore Character Is Not a Legal Name
  • Uses of Variables
  • Topics
  • Examples: Variable Declaration and Initialization
  • String Concatenation
  • Exercise 4-1: Using String Variables
  • Quiz
  • Topics
  • int and double Values
  • Initializing and Assigning Numeric Values
  • Topics
  • Standard Mathematical Operators
  • Increment and Decrement Operators (++ and –)
  • Operator Precedence
  • Using Parentheses
  • Exercise 4-2: Using and Manipulating Numbers

5 Managing Multiple Items

  • Objectives
  • Topics
  • Making Decisions
  • The if/else Statement
  • Boolean Expressions
  • Relational Operators
  • Examples
  • Exercise 5-1: Using if Statements
  • Quiz
  • Topics
  • What If There Are Multiple Items in the Shopping Cart?
  • Introduction to Arrays
  • Array Examples
  • Array Indices and Length
  • Declaring and Initializing an Array
  • Accessing Array Elements
  • Exercise 5-2: Using an Array
  • Quiz
  • Topics
  • Loops
  • Processing a String Array
  • Using break with Loops
  • Exercise 5-3: Using a Loop to Process an Array

6 Describing Objects and Classes

  • Interactive Quizzes
  • Objectives
  • Topics
  • Object-Oriented Programming
  • Duke’s Choice Order Process
  • Characteristics of Objects
  • Classes and Instances
  • Quiz
  • Topics
  • The Customer Properties and Behaviors
  • The Components of a Class
  • Modeling Properties and Behaviors
  • Exercise 6-1: Creating the Item Class
  • Topics
  • Customer Instances
  • Object Instances and Instantiation Syntax
  • The Dot (.) Operator
  • Objects with Another Object as a Property
  • Quiz
  • Topics
  • Accessing Objects by Using a Reference
  • Working with Object References
  • References to Different Objects
  • References and Objects in Memory
  • Assigning a Reference to Another Reference
  • Two References, One Object
  • Exercise 6-2: Modifying the ShoppingCart to Use Item Fields
  • Topics
  • Arrays Are Objects
  • Declaring, Instantiating, and Initializing Arrays
  • Storing Arrays in Memory
  • Storing Arrays of Object References in Memory
  • Topics
  • Soccer Application
  • Creating the Soccer Application
  • Soccer Web Application
  • Summary
  • Practices Overview

7 Manipulating and Formatting the Data in Your Program

  • Objectives
  • Topics
  • String Class
  • Concatenating Strings
  • String Method Calls with Primitive Return Values
  • String Method Calls with Object Return Values
  • Topics
  • Java API Documentation
  • JDK 11 API Documentation
  • Java Platform SE and JDK Version 11 API Specification
  • Java Platform SE 11: Method Summary
  • Java Platform SE 11: Method Detail
  • indexOf Method Example
  • Exercise 7-1: Use indexOf and substring Methods
  • Topics
  • StringBuilder Class
  • StringBuilder Advantages over String for Concatenation (or Appending)
  • StringBuilder: Declare and Instantiate
  • StringBuilder Append
  • Quiz
  • Exercise 7-2: Instantiate the StringBuilder object
  • Topics
  • Primitive Data Types
  • Some New Integral Primitive Types
  • Floating Point Primitive Types
  • Textual Primitive Type
  • Java Language Trivia: Unicode
  • Constants
  • Quiz
  • Topics
  • Modulus Operator
  • Combining Operators to Make Assignments
  • More on Increment and Decrement Operators
  • Increment and Decrement Operators (++ and ––)
  • Topics
  • Promotion
  • Caution with Promotion
  • Type Casting
  • Caution with Type Casting
  • Using Promotion and Casting
  • Compiler Assumptions for Integral and Floating Point Data Types
  • Automatic Promotion
  • Using a long
  • Using Floating Points
  • Floating Point Data Types and Assignment
  • Quiz
  • Exercise 7-3: Declare a long, float, and char
  • Summary
  • Practices Overview

8 Creating and Using Methods

  • Objectives 8-2
  • Topics 8-3
  • Basic Form of a Method 8-4
  • Calling a Method from a Different Class 8-5
  • Caller and Worker Methods 8-6
  • A Constructor Method
  • Writing and Calling a Constructor
  • Calling a Method in the Same Class
  • Topics
  • Method Arguments and Parameters
  • Method Parameter Examples
  • Method Return Types
  • Method Return Types Examples
  • Method Return Animation
  • Passing Arguments and Returning Values
  • More Examples
  • Code Without Methods
  • Better Code with Methods
  • Even Better Code with Methods
  • Variable Scope
  • Advantages of Using Methods
  • Exercise 8-1: Declare a setColor Method
  • Topics
  • Static Methods and Variables
  • Example: Setting the Size for a New Item
  • Creating and Accessing Static Members
  • When to Use Static Methods or Fields
  • Some Rules About Static Fields and Methods
  • Static Fields and Methods Versus Instance Fields and Methods
  • Static Methods and Variables in the Java API
  • Examining Static Variables in the JDK Libraries
  • Using Static Variables and Methods: System.out.println
  • More Static Fields and Methods in the Java API
  • Converting Data Values

9 Using Encapsulation

  • Interactive Quizzes
  • Objectives
  • Topics
  • What Is Access Control?
  • Access Modifiers
  • Access from Another Class
  • Passing an Object Reference
  • What If There Is a New Object?
  • A Shopping Cart Code Example
  • Passing by Value
  • Reassigning the Reference
  • Passing by Value
  • Topics
  • Method Overloading
  • Using Method Overloading
  • Method Overloading and the Java API
  • Exercise 8-2: Overload a setItemFields Method, Part 1
  • Exercise 8-2: Overload a setItemFields Method, Part 2
  • Quiz
  • Another Example
  • Using Access Control on Methods
  • Topics
  • Encapsulation
  • Get and Set Methods
  • Why Use Setter and Getter Methods?
  • Setter Method with Checking
  • Using Setter and Getter Methods
  • Exercise 9-1: Encapsulate a Class
  • Topics
  • Initializing a Shirt Object
  • Constructors
  • Shirt Constructor with Arguments
  • Default Constructor and Constructor with Args
  • Overloading Constructors
  • Quiz
  • Exercise 9-2: Create an Overloaded Constructor

10 More on Conditionals

  • Objectives
  • Topics
  • Review: Relational Operators
  • Testing Equality Between String variables
  • Common Conditional Operators
  • Ternary Conditional Operator
  • Using the Ternary Operator
  • Exercise 10-1: Using the Ternary Operator
  • Topics
  • Handling Complex Conditions with a Chained if Construct
  • Determining the Number of Days in a Month
  • Chaining if/else Constructs
  • Exercise 10-2: Chaining if Statements
  • Topics
  • Handling Complex Conditions with a switch Statement
  • Coding Complex Conditions: switch
  • switch Statement Syntax
  • When to Use switch Constructs
  • Exercise 10-3: Using switch Construct

Quiz

11 Working with Arrays, Loops, and Dates

  • Objectives
  • Topics
  • Displaying a Date
  • Class Names and the Import Statement
  • Working with Dates
  • Working with Different Calendars
  • Some Methods of LocalDate
  • Topics
  • Working with an IDE Debugger
  • Debugger Basics
  • Setting Breakpoints
  • The Debug Toolbar
  • Viewing Variables
  • Formatting Dates
  • Exercise 11-1: Declare a LocalDateTime Object
  • Topics
  • Using the args Array in the main Method
  • Converting String Arguments to Other Types
  • Pass Arguments to the args Array in NetBeans
  • Exercise 11-2: Parsing the args Array
  • Topics
  • Describing Two-Dimensional Arrays
  • Declaring a Two-Dimensional Array
  • Instantiating a Two-Dimensional Array
  • Initializing a Two-Dimensional Array
  • Quiz
  • Topics
  • Some New Types of Loops
  • Repeating Behavior
  • Coding a while Loop
  • A while Loop Example
  • while Loop with Counter
  • Coding a Standard for Loop
  • Standard for Loop Compared to a while loop
  • Standard for Loop Compared to an Enhanced for Loop
  • do/while Loop to Find the Factorial Value of a Number
  • Coding a do/while Loop
  • Comparing Loop Constructs
  • The continue Keyword
  • Exercise 11-3: Processing an Array of Items
  • Topics
  • Nesting Loops
  • Nested for Loop
  • Nested while Loop
  • Processing a Two-Dimensional Array
  • Output from Previous Example
  • Quiz
  • Topics
  • ArrayList Class
  • Benefits of the ArrayList Class
  • Importing and Declaring an ArrayList
  • Working with an ArrayList
  • Exercise 11-4: Working with an ArrayList

12 Using Inheritance

  • Interactive Quizzes
  • Objectives
  • Duke’s Choice Classes: Common Behaviors
  • Code Duplication
  • Inheritance
  • Inheritance Terminology
  • Topics
  • Implementing Inheritance
  • More Inheritance Facts
  • Clothing Class: Part 1
  • Shirt Class: Part 1
  • Constructor Calls with Inheritance
  • Inheritance and Overloaded Constructors
  • Exercise 12-1: Creating a Subclass, Part 1
  • Exercise 12-1: Creating a Subclass, Part 2
  • Topics
  • More on Access Control
  • Overriding Methods
  • Review: Duke’s Choice Class Hierarchy
  • Clothing Class: Part 2
  • Shirt Class: Part 2
  • Overriding a Method: What Happens at Run Time?
  • Exercise 12-2: Overriding a Method in the Superclass
  • Topics
  • Polymorphism
  • Superclass and Subclass Relationships
  • Using the Superclass as a Reference
  • Polymorphism Applied
  • Accessing Methods Using a Superclass Reference
  • Casting the Reference Type
  • instanceof Operator
  • Exercise 12-3: Using the instanceof Operator, Part 1
  • Exercise 12-3: Using the instanceof Operator, Part 2
  • Topics
  • Abstract Classes
  • Extending Abstract Classes

13 Using Interfaces
​​​​​​​

  • Objectives
  • Topics
  • The Object Class
  • Calling the toString Method
  • Overriding toString in Your Classes
  • Topics
  • The Multiple Inheritance Dilemma
  • The Java Interface
  • No Multiple Inheritance of State
  • Multiple Hierarchies with Overlapping Requirements
  • Using Interfaces in Your Application
  • Implementing the Returnable Interface
  • Access to Object Methods from Interface
  • Casting an Interface Reference
  • Quiz
  • Topics
  • What is This Feature?
  • Benefits
  • Where Can it be Used?
  • Why is The Scope So Narrow?
  • Exercise 13-1: Local Variable Type Inference
  • Topics
  • The Collections Framework
  • ArrayList Example
  • List Interface
  • Example: Arrays.asList
  • Exercise 13-2: Converting an Array to an ArrayList, Part 1
  • Exercise 13-2: Converting an Array to an ArrayList, Part 2
  • Topics
  • Example: Modifying a List of Names
  • Using a Lambda Expression with replaceAll
  • Lambda Expressions
  • The Enhanced APIs That Use Lambda
  • Lambda Types
  • The UnaryOperator Lambda Type
  • The Predicate Lambda Type
  • Exercise 13-3: Using a Predicate Lambda Expression

14 Handling Exceptions

  • Objectives
  • Topics
  • What Are Exceptions?
  • Examples of Exceptions
  • Code Example
  • Another Example
  • Types of Throwable classes
  • Error Example: OutOfMemoryError
  • Quiz
  • Topics
  • Normal Program Execution: The Call Stack
  • How Exceptions Are Thrown
  • Topics
  • Working with Exceptions in NetBeans
  • The try/catch Block
  • Program Flow When an Exception Is Caught
  • When an Exception Is Thrown
  • Throwing Throwable Objects
  • Uncaught Exception
  • Exception Printed to Console
  • Summary of Exception Types
  • Exercise 14-1: Catching an Exception
  • Quiz
  • Exceptions in the Java API Documentation
  • Calling a Method That Throws an Exception
  • Working with a Checked Exception
  • Bad Practices
  • Somewhat Better Practice
  • Topics
  • Multiple Exceptions
  • Catching IOException
  • Catching IllegalArgumentException
  • Catching Remaining Exceptions
  • Summary
  • Practices Overview
  • 15 Deploying and Maintaining the Soccer Application
  • Interactive Quizzes
  • Objectives
  • Topics
  • Packages
  • Packages Directory Structure
  • Packages in NetBeans
  • Packages in Source Code
  • Topics
  • SoccerEnhanced.jar
  • Set Main Class of Project
  • Creating the JAR File with NetBeans
  • Topics
  • Client/Server Two-Tier Architecture
  • Client Server Three-Tier Architecture
  • Topics
  • Client/Server Three-Tier Architecture
  • Different Outputs
  • The Soccer Application
  • IDisplayDataItem Interface
  • Running the JAR File from the Command Line
  • Text Presentation of the League
  • Web Presentation of the League
  • Topics
  • Enhancing the Application
  • Adding a New GameEvent Kickoff
  • Game Record Including Kickoff
  • Summary

16 Understanding Modules

  • Objectives
  • Topics
  • Reusing Code in Java: Classes
  • Reusing Code in Java: Packages
  • Reusing Code in Java: Programming in the Large
  • What Is a Module?
  • Example: java.base Module
  • Module System
  • Modular Development in JDK 9
  • Topics
  • JARs
  • JAR Files and Distribution Issues
  • Class Path Problems
  • Example JAR Duplicate Class Problem 1
  • Example JAR Duplicate Class Problem 2
  • Module System: Advantages
  • Accessibility Between Classes
  • Access Across Non-Modular JARs
  • Access Across Modules
  • Topics
  • module-info.java
  • Example: module-info.java
  • Creating a Modular Project
  • exports Module Directive
  • exports…to Module Directive
  • requires Module Directive
  • requires transitive Module Directive
  • Implementing a Requires Transitively Relationship
  • Summary of Keywords
  • Compiling Modules
  • Running a Modular Application
  • Topics
  • The JDK
  • The Modular JDK
  • Listing the Modules in JDK 9
  • Java SE Modules
  • The Base Module

17 JShell

  • Objectives
  • Topics
  • A Million Test Classes and Main Methods
  • JShell Provides a Solution
  • Topics
  • Comparing Normal Execution with REPL
  • Getting Started with JShell and REPL
  • Scratch Variables
  • Declaring Traditional Variables
  • Code Snippets
  • Completing a Code Snippet
  • Tab Completion and Tab Tips
  • Semicolons
  • JShell Commands
  • Importing Packages
  • Quiz
  • Topics
  • Why Incorporate JShell in an IDE?
  • Use Cases
  • Two Ways to Open JShell in NetBeans

Duration and pricing

In Price Group A

Certificate.

Please read about our certificates.

Bookings

You can download the course registration form on our home page or by clicking here

Brochure

You may download a pdf copy of this page by clicking on the pdf icon at the top of the page.

Questions

Please email us

Schedule

On the calendar below. If your browser doesn’t display the calendar below, please click on this link or try using Google Chrome, alternatively please enquire via our Contact Us page.

Print Friendly, PDF & Email
Additional Information
course-instruction

Distance-Learning, Full-time, Part-Time