starweaver-logo
LOG INGET STARTED
LOG INGET STARTED
  • Browse
  • Doing

  • On Air
  • Channels
  • Career Paths
  • LEARNING

  • Courses
  • Certifications
  • Journeys
  • Test Prep
  • CONNECTING

  • How It Works
  • Community
  • Techbytes
  • Podcasts
  • Leaderboards
  • SUPPORT

  • Support & FAQs
  • Starweaver for Business
  • Starweaver for Campus
  • Teach with Starweaver
footer-brand-logo
  • COMPANY
  • About Us
  • Support and Knowledge Base
  • Policies & Terms
  • Contact
  • CONTENT
  • Courses
  • Certifications
  • Journeys
  • Test Prep
  • Meet the Gurus
  • Techbytes
  • FOR ORGANIZATIONS
  • Starweaver for Business
  • Starweaver for Campus
  • Catalogue
  • Pricing
  • Private Classes
  • PARTNER WITH US
  • Instructors & Teachers
  • Books, Writing & Publishing
  • FOLLOW US
    • facebook
    • twitter
    • linkedin
    • pinterest
    • instagram
    • youtube
Our trademarks include Starweaver®, Make genius happen™, Education you can bank on®, People are your most important assets!®, Body of Knowledge™, StarLabs™, LiveLabs™, Journeys™
© Starweaver Group, Inc. All Rights Reserved.
  1. Courses
  2. >
  3. Fundamentals of Java

Fundamentals of Java

This course includes core elements of programming in Java, with practical, hands-on approach, covers everything from basic programming, through to advanced features such as Object Orientation, Lambda syntax, collections and streams, using databases.

Matt Thornfield
Matt Thornfield
Full Stack | core | 15 hours |   Published: Oct 2021
In partnership with:  Coursera

    Discussions

Overview

1.6KSTUDENTS*
97.1%RECOMMEND*

This course includes:

  • 15+ hours of on-demand video
  • 24 modules
  • Core level
  • Direct access/chat with the instructor
  • 100% self-paced online
  • Many downloadable resources
  • Shareable certificate of completion
This course will help you learn the core elements of programming in Java, with a very practical, hands-on approach. We cover everything from the basics of programming, through to advanced features such as Object Orientation, Lambda syntax, collections and streams, using databases, working with files, and more.   It is a great entry point for the new full-stack developer who intends to go on to work with popular Java frameworks such as Spring, Jakarta and Apache Spark, Akka,, or even building Android Apps. To be a confident, competent Java programmer, you need a good foundation and this course will give you that – it covers every topic in a thorough way, but at a level that makes it easy to follow and accessible.  When you have completed this course you’ll be ready to start learning one or more of these frameworks. The syllabus has been specially designed to cover what good developers need to know, and helps you build up your knowledge through lots of practical exercises. The course covers JavaSE versions 8, 11 and 17 (and we also cover why there are so many versions of Java, and which you should be using!) 

Skills You Will Gain

Core java
Java
Java Fundamentals
Java programming
Java SE
Object Oriented Programming

Learning Outcomes (At the end of this program you will be able to)

  • How to obtain and install everything you need to build Java programs 
  • Using an Integrated Development environment (Eclipse or IntelliJ Idea) 
  • Core building blocks of programming (variables, control flow, conditions) 
  • Object Oriented development and how to model the real world 
  • Working with time and money 
  • Collections and data management 
  • Functional style programming  
  • Testing 
  • Working with Databases 

Prerequisites

  • This is an entry-level course and no prior knowledge of Java is assumed.  
  • Some programming experience will be helpful but not essential.

Who Should Attend

  • New developers (graduates / individuals retraining for new roles) 
  • Existing developers who are transitioning from other languages 
  • Self-taught developers who want to get a more professional and solid grounding in the core concepts of Java programming 

Curriculum

Instructors

Frequently Asked Questions

How much do the courses at Starweaver cost?

We offer flexible payment options to make learning accessible for everyone. With our Pay-As-You-Go plan, you can pay for each course individually. Alternatively, our Subscription-Based plan provides you with unlimited access to all courses for a monthly or yearly fee.

Do you offer any certifications upon completion of a course at Starweaver?

Yes, we do offer a certification upon completion of our course to showcase your newly acquired skills and expertise.

Does Starweaver offer any free courses or trials?

No, we don't offer any free courses, but we do offer 5-day trial only on our subscriptions-based plans.

Are Starweaver's courses designed for beginners or advanced students?

Our course is designed with three levels to cater to your learning needs - Core, Intermediate, and Advanced. You can choose the level that best suits your knowledge and skillset to enhance your learning experience.

What payment options are available for Starweaver courses?

We accept various payment methods such as major credit cards, PayPal, wire transfer, and company purchase orders. For more information related to payments contact customer support.

Do you offer refunds?

Yes, we do offer a 100% refund guarantee for our courses within a specified time frame. If you are not satisfied with the course, contact our customer support team to request a refund with your order details. Some restrictions may apply.

*Where courses have been offered multiple times, the “# Students” includes all students who have enrolled. The “%Recommended” shown is also based on this data.
Matt Thornfield

Matt Thornfield

Matt Thornfield is a seasoned Senior Instructor at Neueda with a passion for delivering impactful training across a wide range of domains. With over 20 years of experience, he has developed and taught comprehensive Java courses through his roles at Capability Training and Management Ltd. His educational journey has spanned the globe, collaborating with platforms such as Virtual Pair Programmers and Inception Training to help learners master Java programming effectively.

In addition to his work in technology education, Matt brings a unique flair as a professional toastmaster and master of ceremonies. He has enriched events of all kinds—from weddings to corporate functions—throughout Yorkshire with his engaging presence and professionalism.

Matt’s background in financial markets, gained through positions at Lloyds Banking Group and HBOS, provides him with a deep understanding of risk management and regulatory compliance. This experience informs his instructional approach, allowing him to integrate real-world financial insights into his technical training. He has been instrumental in developing IT systems that optimize operations and managing capital calculation frameworks aligned with Basel II regulations.

Whether he’s leading workshops on Java application performance or orchestrating memorable event experiences, Matt is committed to excellence. He creates dynamic learning environments where clarity meets depth, making complex concepts accessible and engaging. His dedication to empowering students with practical, real-world skills ensures his impact extends well beyond the classroom.

VIEW MY CHANNEL
1Welcome to the course!
2Module 01: Course Introduction
3Module 02: Getting Started
4Module 03: Installing an IDE
5Module 04: Variables
6Module 05: Control Flow
7Module 06: Strings
8Module 07: Code Structure 1
9Module 08: Working with Classes
10Module 09: Practical Exercise 1
11Module 10: Arrays of Objects
12Module 11: Code Structure 2
13Module 12: Time and Money
14Module 13: Object Orientation 1 (inheritance)
15Module 14: Important methods to override
16Module 15: Enums
17Module 16: Console Input and Output
18Module 17: Exceptions
19Module 18: Practical Exercise 2
20Module 19: Collections 1
21Module 20: Object Orientation 2 (polymorphism)
22Module 21: Object Orientation 3 (interfaces)
23Module 22: Collections 2
24Module 23: Garbage Collection
25Module 24: Practical Exercise 3

About this course: Overview, Learning Outcomes, Who Should Enroll...

Segment - 01 - Introduction

Segment - 06 - Installing an IDE (Intellij Idea)

Segment - 07 - Installing an IDE (Eclipse)

Segment - 08 - 0303-Features of an IDE

Segment - 09 - Primative data types

Segment - 10 - Basic arithmetic

Segment - 11 - Booleans, chars and arrays

Segment - 32 - Using Arrays

Segment - 33 - The Meaning of Null

Segment - 34 - Looping through Arrays

Segment - 35 - Creating Wrapper Classes

Segment - 39 - The history of Dates and Times

Segment - 40 - Working with Dates and Times

Segment - 41 - Working with Precision Decimals

Segment - 36 - Packages

Segment - 37 - Importing from Java Libraries

Segment - 38 - The Javadoc's

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

Segment - 53 - Reading Input from the Console

Segment - 54 - Console Input

Segment - 55 - 1603-Using the Scanner

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

Segment - 16 - Introducing the String

Segment - 17 - Comparing strings

Segment - 18 - Ternary operator

Segment - 19 - Concatenation and interpolation

Segment - 20 - Defining methods

Segment - 21 - Using methods

Segment - 22 - Variable scope

Segment - 23 - Introducing classes

Segment - 47 - The to String method

Segment - 48 - Object equality and the equals method

Segment - 49 - Hashcodes

Segment - 50 - Activity

Segment - 30 - Practical Exercise 1

Segment - 31 - Practical Exercise 2

Segment - 12 - For loops

Segment - 13 - While loops

Segment - 14 - If and switch

Segment - 15 - Logical Operators (AND and OR)

Segment - 51 - Using enums 1

Segment - 52 - Using enums 2

Segment - 42 - Introducing Object Orientation

Segment - 43 - Inheriting a Class

Segment - 44 - Using Constructors

Segment - 45 - Overriding Methods

Segment - 46 - Abstract and Sealed Classes

Segment - 69 - Intro to polymorphism

Segment - 70 - Using polymorphism

Segment - 71 - Activity

Segment - 61 - Practical Exercise 1

Segment - 62 - Practical Exercise 2

Segment - 63 - Practical Exercise 3

Segment - 83 - Practical Exercise 1

Segment - 84 - Practical Exercise 2

Segment - 85 - Practical Exercise 3

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

Segment - 78 - How memory is managed in Java

Segment - 79 - The StringBuilder class

Segment - 80 - Activity

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

Segment - 64 - Introducing Arraylists

Segment - 65 - Generic types

Segment - 66 - Retrieving data and looping

Segment - 67 - Hashsets

Segment - 68 - Activity

Segment - 81 - How memory is managed in Java

Segment - 82 - The StringBuilder class