Java Fundamentals


In Belfast

Price on request


  • Type


  • Level


  • Location

    Belfast (Northern Ireland)

  • Duration

    5 Days

  • Start date

    Different dates available

This course introduces the key components of the Java programming language. Starting from first basics, it introduces the essential Java language syntax, idioms, and tools required to quickly become productive as a Java developer.

As with all our courses, the syllabus can be tweaked to cover more advanced topics, depending on your needs.

The course is delivered by a seasoned Java developer with over 25 years of commercial experience, including 13+ years working with Java.



Start date

Belfast (County Antrim)
See map
Instil Software, Linen Loft, 27-37 Adelaide Street, BT2 8FE

Start date

Different dates availableEnrolment now open

About this course

By the end of the course delegates should be competent in the key components of the Java language, syntax, idioms and tools

Developers at all levels

Some knowledge of basic coding


Course can be flexible and tailored to suit needs of the delegates

Email to request information on a specific course and a member of our training team will get in contact with you as soon as possible

Questions & Answers

Add your question

Our advisors and other users will be able to reply to you

Who would you like to address this question to?

Fill in your details to get a reply

We will only publish your name and question



  • Java language
  • Java Fundamentals
  • Java Developers
  • Java Programming
  • Java I/O
  • Syntax
  • Idioms
  • JVM
  • Java concepts
  • Java methods

Course programme

Core Programming Concepts
  • Variables, functions and libraries
  • Compiled programs vs interpreted scripts
  • Typed and untyped programming
  • Static vs dynamic typing
  • Threads and call stacks
  • Errors and exceptions
Core Java Concepts
  • Origins and goals of the Java language
  • Bytecode and the Java Virtual Machine
  • Packages and dynamic class loading
  • Garbage collection in Java
Creating Simple Programs
  • Writing Hello World! in Java
  • Declaring variables to hold numbers
  • Declaring variables to hold strings
  • Casting and converting between types
  • Reading and writing from the console
Making Choices and Looping
  • Conditional execution using the if statement
  • Conditional execution using the switch statement
  • Bounded iteration using the for loop
  • Unbounded iteration using the while and do … while loops
  • Alerting the execution of a loop using break and continue
  • Different ways of writing infinite loops
Java Methods in Depth
  • What does the static keyword mean?
  • Understanding how parameters are passed
  • Choosing if a method should be public or private
  • Understanding recursion and writing recursive methods
Introduction to Object Orientation
  • What is a data structure?
  • Why are data structures dangerous?
  • What are classes and objects?
  • What makes an object different from a class?
  • Key principle one – Abstraction
  • Key principle two – Encapsulation
  • How do you avoid repetition in classes?
  • Key principle three – Inheritance
  • How do you change inherited behavior?
  • Key principle four – Polymorphism
Support for OO in Java
  • Allocating objects from the heap
  • Linking to objects via references
  • Moving references to other objects
  • Pointing a reference at null
  • Ensuring an object is no longer referenced
  • A brief introduction to the theory of garbage collection
Built in Objects in Java
  • Strings are objects in Java
  • Arrays are objects in Java
  • Every class has an instance of Class
Object Oriented Development Part One
  • Creating basic Java classes
  • Choosing accessibility levels
  • Overloading and overriding methods
  • Overriding the toString method
  • Comparing references using the instanceof operator
  • Comparing references using class objects
  • Inheriting from a base class
  • Creating abstract and final classes
Object Oriented Development Part Two
  • Writing appropriate class constructors
  • Private constructors and singletons
  • Static and instance initialization blocks
  • Top down class and object initialization
  • Declaring and using interfaces
  • Using inner and anonymous classes
  • Implementing equal and hashcode
  • Cloning and copy constructors
  • GUI Development in Java
  • How the Swing library works
  • Creating a window class via inheritance
  • Adding widgets to the window
  • Positioning widgets using layout managers
  • Adding event handling to the GUI
Exception Handling in Java
  • Introducing errors, runtime exceptions and checked exceptions
  • Exceptions in constructors and finalizers
  • Implementing an effective exception handling strategy
  • The correct use of finally blocks
  • Using Java assertions
Java I/O
  • Introducing input and output streams
  • Introducing readers and writers
  • Using File objects to resolve file paths
  • Text based file I/O with buffered streams
  • Binary based file I/O using data streams
  • Serializing Java objects
  • Customizing Java Serialization

Additional information

This course can be delivered as a public or a private course

Java Fundamentals

Price on request