Welcome to ONLC Training Centers

Java Programming Level 1: Introduction for Programmers

Class Dates
(click date for class times)
(click Enroll for locations)

Fee:  $1195

Savings options:

 Learning Credits
Need a price quote?|/b>

Follow the link to our self-service price quote form to generate an email with a price quote.

Need a class for a group?

We can deliver this`class for your group. Follow the link to request more information.

Email Alert

Receive an email when this`class is available as`"Ready to`Run" or "Early Notice" status.

Train from your home or office

If you have high-speed internet and a computer you can likely take this class from your home or office.

Java Programming Level 1: Introduction for Programmers Course Outline

In this live, instructor-led training course, students who already have a programming background will learn to program in Java, including:

How Java works and its place in the world of programming languages
Work with and manipulate strings
Perform math operations
Work with Java operators and loops
Gain a deeper understanding of Object Oriented Programming concepts
Make best use of the Java collections framework
Best practices for dealing with exceptions
Package Java code
Work with external data storage systems.

This Java course is taught using Java 12.

Students new to the Java language who already have experience with other programming languages.

This course is specially designed for those with prior programming background. You should also have a working knowledge of Object Oriented Programming concepts. If you do not have prior programming experience nor are not familiar with Object Oriented Programming, you should instead attend our Java Programming Level 1: Introduction for Non-Programmers" course. To view the course outline for the alternative course for non-programmers see:
Java Programming Level 1: Introduction for Non-Programmers


1 Getting Started
Writing, Compiling, and Executing Your Hello World Program
Exercise 1: Creating Your Hello World Program in Java
Basic Syntax and Naming Conventions
Printing Out Different Data Types
Variables and Variable Types
Exercise 2: Printing Different Types of Data
Primitive versus Reference Data Types
Chars and Strings
Exercise 3: Declaring Strings
Doing Some Math
Exercise 4: Solving a Simple Trigonometry Problem
Comments Help You to Share Code
CLI versus GUI
Exercise 5: Running the Code from the CLI
Activity 1: Obtaining the Minimum of Two Numbers

2 Learning the Basics
Controlling the Flow of Your Programs
Exercise 1: Creating a Basic if Statement
Comparison Operators
Exercise 2: Using Java Comparison Operators
Nested if Statements
Exercise 3: Implementing a Nested if Statement
Branching Two Ways with if and else
Exercise 4: Using if and else Statements
Using Complex Conditionals
Exercise 5: Using Logical Operators to Create Complex Conditionals
Using Arithmetic Operators in an if Condition
The Ternary Operator
Exercise 6: Using the Ternary Operator
Equality Can Be Tricky
Exercise 7: Comparing Decimal Values
Comparing Strings
Using switch Statements
Exercise 8: Using switch
Exercise 9: Allowing Cases to Fall Through
Using Java 12 Enhanced switch Statements
Exercise 10: Using Java 12 switch Statements
Looping and Performing Repetitive Tasks
Looping with the for Loop
Exercise 11: Using a Classic for Loop
Exercise 12: Using an Enhanced for Loop
Jumping Out of Loops with Break and Continue
Exercise 13: Using break and continue
Using the while Loop
Exercise 14: Using a while Loop
Using the do-while Loop
Handling Command-Line Arguments
Exercise 15: Testing Command-Line Arguments
Converting Command-Line Arguments
Exercise 16: Converting String to Integers and Doubles
Diving Deeper into Variables Immutability
Comparing Final and Immutable
Using Static Values
Using Local Variable Type Inference
Activity 1: Taking Input and Comparing Ranges

3 Object-Oriented Programming
The Anatomy of a Class
Working with Objects in Java
Checking the Precedence of a Class with instanceof
Exercise 1: Creating the WordTool Class
Activity 1: Adding the Frequency-of-Symbol Calculation to WordToo
Inheritance in Java
Overriding and Hiding Methods
Avoiding Overriding: Final Classes and Methods
Overloading Methods and Constructors
Inner Classes
Documenting with JavaDoc
Activity 2: Adding Documentation to WordTool

4 Collections, Lists and Java's Built-In APIs
Activity 1: Searching for Multiple Occurrences in an Array
Exercise 1: Creating the AnalyzeInputApplication
Iterating through Collections
Exercise 2: Bringing Analytics into the AnalyzeInput Application
Sorting Collections
Exercise 3: Sort the Results from the AnalyzeInput Application
Activity 2: Iterating through Large Lists

5 Exceptions
A Simple Exception Example
NullPointerException Have No Fear
Catching Exceptions
Exercise 1: Logging Exceptions
Throws and Throw
Exercise 2: Breaking the Law (and Fixing It)
The finally Block
Activity 1: Designing an Exception Class LoggingData
Best Practices for Handling Exceptions
Where Do Exceptions Come from?

6 Libraries, Packages, and Modules
Organizing Code into Packages
Importing Classes
Exercise 1: Importing Classes
Fully Qualified Class Names
Importing All Classes in a Package
Dealing with Duplicated Names
Static Imports
Creating a Package
Naming Your Package
Directories and Packages
Exercise 2: Creating a Package for a Fitness Tracking App
Building JAR Files
Exercise 3: Building a JAR File
Defining the Manifest
Exercise 4: Building an Executable JAR File
Build Tools
Exercise 5: Creating a Maven Project
Exercise 6: Adding Java Sources to the Maven Project
Exercise 7: Building the Maven Project
Exercise 8: Creating an Executable JAR with Maven
Using Gradle
Exercise 9: Creating a Gradle Project
Exercise 10: Building an Executable JAR with Gradle
Using Third-Party Libraries
Finding the Libraries
Adding a Project Dependency
Exercise 11: Adding a Third-Party Library Dependency
Using the Apache Commons Lang Library
Exercise 8: Creating an Executable JAR with Maven
Using Gradle
Exercise 9: Creating a Gradle Project
Exercise 10: Building an Executable JAR with Gradle
Using Third-Party Libraries
Finding the Libraries
Adding a Project Dependency
Exercise 11: Adding a Third-Party Library Dependency
Using the Apache Commons Lang Library Library
Using Modules
Creating Modules
Exercise 13: Creating a Project for a Module
Exercise 14: Creating a Second Module Using the First One
Activity 1: Tracking Summer High Temperatures

7 Sockets, Files, and Streams
Listing Files and Directories
Separating Directories from Files
Exercise 1: Listing theContents of Subdirectories
Creating and Writing to a File
Activity 1: Writing the Directory Structure to a File
Reading an Existing File
Reading a Properties File
Exercise 2: Creating a Properties File from the CLI
What are Streams?
The Different Streams of the Java Language
What are Sockets?
Creating a SocketServer
Writing Data on and Reading Data from aSocket
Activity 2: Improving the EchoServer and EchoClient Programs
Blocking and Non-Blocking Calls

View outline in Word


Attend hands-on, instructor-led Java Programming Level 1: Introduction for Programmers training classes at ONLC's more than 300 locations. Not near one of our locations? Attend these same live classes from your home/office PC via our Remote Classroom Instruction (RCI) technology.

For additional training options, check out our list of Courses and select the one that's right for you.


Class Format
Class Policies
Student Reviews

First Name

Last Name