Course curriculum

  • 1

    Module 01: Course Introduction

    • Segment - 01 - Introduction
  • 2

    Module 02: Getting Started

    • Segment - 02 - What is Java JVM JDK?
    • Segment - 03 - Where do we get it?
    • Segment - 04 - What version should you get?
    • Segment - 05 - Building a Hello World Application
  • 3

    Module 03: Installing an IDE

    • Segment - 06 - Installing an IDE (Intellij Idea)
    • Segment - 07 - Installing an IDE (Eclipse)
    • Segment - 08 - 0303-Features of an IDE
  • 4

    Module 04: Variables

    • Segment - 09 - Primative data types
    • Segment - 10 - Basic arithmetic
    • Segment - 11 - Booleans, chars and arrays
  • 5

    Module 05: Control Flow

    • Segment - 12 - For loops
    • Segment - 13 - While loops
    • Segment - 14 - If and switch
    • Segment - 15 - Logical Operators (AND and OR)
  • 6

    Module 06: Strings

    • Segment - 16 - Introducing the String
    • Segment - 17 - Comparing strings
    • Segment - 18 - Ternary operator
    • Segment - 19 - Concatenation and interpolation
  • 7

    Module 07: Code Structure 1

    • Segment - 20 - Defining methods
    • Segment - 21 - Using methods
    • Segment - 22 - Variable scope
    • Segment - 23 - Introducing classes
  • 8

    Module 08: Working with Classes

    • Segment - 24 - The purpose of classes
    • Segment - 25 - Getter and Setter Methods
    • Segment - 26 - Constructors
    • Segment - 27 - Method Overloading
    • Segment - 28 - Class Design and Record Casses
    • Segment - 29 - Wrapper Classes for Primitives
  • 9

    Module 09: Practical Exercise 1

    • Segment - 30 - Practical Exercise 1
    • Segment - 31 - Practical Exercise 2
  • 10

    Module 10: Arrays of Objects

    • Segment - 32 - Using Arrays
    • Segment - 33 - The Meaning of Null
    • Segment - 34 - Looping through Arrays
    • Segment - 35 - Creating Wrapper Classes
  • 11

    Module 11: Code Structure 2

    • Segment - 36 - Packages
    • Segment - 37 - Importing from Java Libraries
    • Segment - 38 - The Javadoc's
  • 12

    Module 12: Time and Money

    • Segment - 39 - The history of Dates and Times
    • Segment - 40 - Working with Dates and Times
    • Segment - 41 - Working with Precision Decimals
  • 13

    Module 13: Object Orientation 1 (inheritance)

    • Segment - 42 - Introducing Object Orientation
    • Segment - 43 - Inheriting a Class
    • Segment - 44 - Using Constructors
    • Segment - 45 - Overriding Methods
    • Segment - 46 - Abstract and Sealed Classes
  • 14

    Module 14: Important methods to override

    • Segment - 47 - The to String method
    • Segment - 48 - Object equality and the equals method
    • Segment - 49 - Hashcodes
    • Segment - 50 - Activity
  • 15

    Module 15: Enums

    • Segment - 51 - Using enums 1
    • Segment - 52 - Using enums 2
  • 16

    Module 16: Console Input and Output

    • Segment - 53 - Reading Input from the Console
    • Segment - 54 - Console Input
    • Segment - 55 - 1603-Using the Scanner
  • 17

    Module 17: Exceptions

    • Segment - 56 - Introducing exceptions and reading stack traces
    • Segment - 57 - Throwing Exceptions
    • Segment - 58 - Checked and Unchecked exceptions and try-catch blocks
    • Segment - 59 - Creating Custom Exceptions
    • Segment - 60 - Activity
  • 18

    Module 18: Practical Exercise 2

    • Segment - 61 - Practical Exercise 1
    • Segment - 62 - Practical Exercise 2
    • Segment - 63 - Practical Exercise 3
  • 19

    Module 19: Collections 1

    • Segment - 64 - Introducing Arraylists
    • Segment - 65 - Generic types
    • Segment - 66 - Retrieving data and looping
    • Segment - 67 - Hashsets
    • Segment - 68 - Activity
  • 20

    Module 20: Object Orientation 2 (polymorphism)

    • Segment - 69 - Intro to polymorphism
    • Segment - 70 - Using polymorphism
    • Segment - 71 - Activity
  • 21

    Module 21: Object Orientation 3 (interfaces)

    • Segment - 72 - What is an interface?
    • Segment - 73 - Creating an interface
    • Segment - 74 - Implementing an interface
    • Segment - 75 - Interfaces in the Java libraries
    • Segment - 76 - Default and static methods
    • Segment - 77 - Activity
  • 22

    Module 22: Collections 2

    • Segment - 78 - How memory is managed in Java
    • Segment - 79 - The StringBuilder class
    • Segment - 80 - Activity
  • 23

    Module 23: Garbage Collection

    • Segment - 81 - How memory is managed in Java
    • Segment - 82 - The StringBuilder class
  • 24

    Module 24: Practical Exercise 3

    • Segment - 83 - Practical Exercise 1
    • Segment - 84 - Practical Exercise 2
    • Segment - 85 - Practical Exercise 3
  • 25

    Module 25: Lambda Syntax

    • Segment - 86 - Anonymous inner classes
    • Segment - 87 - Lambda syntax
    • Segment - 88 - Using streams
    • Segment - 89 - Activity
  • 26

    Module 26: Packaging and Deployment

    • Segment - 90 - Creating a jar file
    • Segment - 91 - Running a jar file
    • Segment - 92 - The jpackage tool
  • 27

    Module 27: Unit Testing

    • Segment - 93 - Introduction to Unit testing
    • Segment - 94 - Exploring Assertions
  • 28

    Module 28: Using External Libraries and build tools

    • Segment - 95 - Using external libraries
    • Segment - 96 - Introducing Maven
    • Segment - 97 - Getting project dependencies with Maven
    • Segment - 98 - Building a Jar file with Maven
  • 29

    Module 29: Working with Databases

    • Segment - 99 - What is a relational database
    • Segment - 100 - Using JDBC
    • Segment - 101 - Mapping database tables with objects
    • Segment - 102 - Activity
  • 30

    Module 30: File Input and Output

    • Segment - 103 - Referencing files and paths
    • Segment - 104 - Using the FileWriter and FileReader
    • Segment - 105 - Using the Files object
    • Segment - 106 - Activity
  • 31

    Module 31: Course summary and next steps

    • Segment - 107 - Conclusion