Java Fundamentals

Angie Jones

Angie Jones

Java Champion
8 hours, 55 minutes CC
Java Fundamentals

Course Description

Java is one of the most popular programming languages in the world, especially for enterprise applications. Quickly learn object-oriented programming (OOP) principles, functional programming techniques, and how to use conditionals, loops, and data structures. Inspired by Java's capacity to model real-world systems, the course offers hands-on coding challenges to reinforce everything you learn along the way!

This course and others like it are available as part of our Frontend Masters video subscription.


Course Details

Published: May 9, 2023

Learning Paths

Learn Straight from the Experts Who Shape the Modern Web

Your Path to Senior Developer and Beyond
  • 200+ In-depth courses
  • 18 Learning Paths
  • Industry Leading Experts
  • Live Interactive Workshops
Get Unlimited Access Now

Table of Contents


Section Duration: 3 minutes

Conditions & Loops

Section Duration: 1 hour, 28 minutes
  • Java Basics Exercise
    Angie walks through creating a gross pay calculator, files, packages, main methods, and Java naming conventions. The built-in text scanner class Scanner, defining variables, setting variable types, and how to make comments are also covered in this segment.
  • If Statement
    Angie discusses the function of an if statement and walks through coding an example if statement. If statements must evaluate to true or false and will apply if the defined condition is met.
  • If-Else Statement
    Angie adds an else statement to the previously created if statement which will be applied if the condition is not met.
  • Nested If Statement
    Angie demonstrates nesting multiple logic paths in an if statement to check for a condition, and if that condition is met, then check for another condition. If-else-if statements can also be used in decisions with more than one path.
  • Switch Statements
    Angie discusses using switch statements instead of if-else-if to check conditionals. Unlike if-else-if statements, switch statements check for equality.
  • Switch Expressions
    Angie demonstrates switch expressions, which are similar to switch statements, but allow values to be directly assigned when a case is matched.
  • Operators
    Angie discusses relational operators in Java, including > greater than, < less than, greater than or equal to >=, less than or equal to <=, equal to ==, and not equal to !=. The logical operators && AND, || OR, and ! NOT are also covered in this segment.
  • While Loops
    Angie walks through using a while loop to create a program with input validation that runs until the defined condition is met. Adding extra input restrictions using the logical operator || OR is also covered in this segment.
  • Do While Loops
    Angie demonstrates repeatedly running a program while a condition is being met using a do while loop. Student questions regarding valid boolean responses and if data from the loop can be used the next time it runs are also covered in this segment.
  • For Loop
    Angie walks through creating a program that will scan a given number of items and keep a running total. A for loop will run a specified number of times and the condition is tested before entering the loop.
  • Nested Loop
    Angie discusses nested loops as a loop inside a loop where the inner loop will execute once for each iteration of the outer loop. A student question regarding how to decide how deeply nested loops should be is also covered in this segment.

Methods, Objects & Data Types

Section Duration: 1 hour, 25 minutes

Arrays & Text Processing

Section Duration: 1 hour, 1 minute


Section Duration: 52 minutes

Polymorphism & Abstraction

Section Duration: 1 hour, 8 minutes

Data Structures

Section Duration: 1 hour, 10 minutes

Functional Interfaces & Streams

Section Duration: 47 minutes
  • Functional Interfaces
    Angie discusses functional programming in Java by utilizing the java.util.function package to access several functional interfaces. A functional interface is an interface with a single abstract method which can be implemented by lambda expressions and method references.
  • Streams Overview
    Angie discusses streams, a sequence of elements from a data source, that can be accessed by using the package. An overview of intermediate and terminal stream operations is also covered in this segment.
  • anyMatch, allMatch, & filter
    Angie demonstrates using the anyMatch, allMatch, and filter operations to return the desired data from an array of strings. The filter operation allows for a more precise return in that it will only return items that match the given condition.
  • map & reduce
    Angie demonstrates the stream operations map and reduce, which allow manipulation of the data within the stream. Examples using both strings and integers are provided in this segment.
  • collect
    Angie walks through assigning a stream to a defined collection using the collect operation. A demonstration of combining multiple stream operations is also covered in this segment.


Section Duration: 55 minutes

Wrapping Up

Section Duration: 2 minutes

Learn Straight from the Experts Who Shape the Modern Web

  • In-depth Courses
  • Industry Leading Experts
  • Learning Paths
  • Live Interactive Workshops
Get Unlimited Access Now