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