651-905-3729 Microsoft Silver Learning Partner EC Counsel Reseller compTIA Authorized Partner

Java Programming Level 1: Introduction for Programmers

3 days

Description

In this live, instructor-led training course, students who already have a programming background will learn to program in Java. Attendees will learn: how Java works and its place in the world of programming languages; to work with and manipulate strings; to perform math operations; to work with Java operators and loops; to gain a deeper understanding of Object Oriented Programming concepts; to make best use of the Java collections framework; best practices for dealing with exceptions; to package Java code; and work with external data storage systems. This Java course is taught using Java 12.

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

Upcoming Classes

Virtual Classroom Live
January 27, 2025

$1,195.00
3 days    9 AM CT - 3:45 PM CT
view class details and enroll
Virtual Classroom Live
February 24, 2025

$1,195.00
3 days    9 AM CT - 3:45 PM CT
view class details and enroll
Virtual Classroom Live
March 24, 2025

$1,195.00
3 days    9 AM CT - 3:45 PM CT
view class details and enroll
Private Training Available
No date scheduled, don’t see a date that works for you or looking for a private training event, please call 651-905-3729 or submit a request for further information here.
request a private session or new date

Course Overview

1 Getting Started

  • Introduction
  • 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
  • Null
  • 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
  • Summary

2 Learning the Basics

  • Introduction
  • 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
  • Summary

3 Object-Oriented Programming

  • Introduction
  • 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
  • Recursion
  • Annotations
  • Interfaces
  • Inner Classes
  • Documenting with JavaDoc
  • Activity 2: Adding Documentation to WordTool
  • Summary

4 Collections, Lists and Java's Built-In APIs

  • Introduction
  • Arrays
  • Activity 1: Searching for Multiple Occurrences in an Array
  • Sets
  • Lists
  • Exercise 1: Creating the AnalyzeInputApplication
  • Maps
  • Iterating through Collections
  • Exercise 2: Bringing Analytics into the AnalyzeInput Application
  • Sorting Collections
  • Exercise 3: Sort the Results from the AnalyzeInput Application
  • Properties
  • Activity 2: Iterating through Large Lists
  • Summary

5 Exceptions

  • Introduction
  • 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?
  • Summary

6 Libraries, Packages, and Modules

  • Introduction
  • 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
  • Maven
  • 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
  • Summary

7 Sockets, Files, and Streams

  • Introduction
  • 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
  • Summary

Upcoming Classes

Virtual Classroom Live
January 27, 2025

$1,195.00
3 days    9 AM CT - 3:45 PM CT
view class details and enroll
Virtual Classroom Live
February 24, 2025

$1,195.00
3 days    9 AM CT - 3:45 PM CT
view class details and enroll
Virtual Classroom Live
March 24, 2025

$1,195.00
3 days    9 AM CT - 3:45 PM CT
view class details and enroll
Private Training Available
No date scheduled, don’t see a date that works for you or looking for a private training event, please call 651-905-3729 or submit a request for further information here.
request a private session or new date

Prerequisites

This course is specially designed for individuals with prior programming background. You should also have a working knowledge of Object Oriented Programming concepts.

If you have no prior programming experience or are not familiar with Object Oriented Programming, you should consider "Java Programming Level 1: Introduction for Non-Programmers" course instead.
 

Upcoming Classes

Virtual Classroom Live
January 27, 2025

$1,195.00
3 days    9 AM CT - 3:45 PM CT
view class details and enroll
Virtual Classroom Live
February 24, 2025

$1,195.00
3 days    9 AM CT - 3:45 PM CT
view class details and enroll
Virtual Classroom Live
March 24, 2025

$1,195.00
3 days    9 AM CT - 3:45 PM CT
view class details and enroll
Private Training Available
No date scheduled, don’t see a date that works for you or looking for a private training event, please call 651-905-3729 or submit a request for further information here.
request a private session or new date