Java Boot Camp, 12-weeks Blended Learning Program, £2100
Course details
Java Boot Camp Course Summary.

Java Bootcamp Course Summary.
This execellent Java Programming program will help you to learn coding in Java thoroughly.
Learn programming from scratch to job-ready.
"Blended "learning programmingcourse with Instructor-led lessons, self-study and 1-1 mentoring to learn Java.
Hands-on, Practical Course.
Max 4 people per group.
PCWorkshops Certificate, Oracle Certification is assessment based
Assistance with job-search includes CV, mock interview questions

Course Details
How does it work
  • Blended Learning: 1 weekly lesson for 12 weeks, Plus 1-1 Mentoring, Plus self-study
  • Study Level: Learn Java from scratch to job ready.
  • Duration: 12 Weeks
  • Classroom Times:
    Weekly Instructor-Led lesson, 11am - 6pm
    Online or Classroom
  • Self-study: +-15 hours per week.
  • 1-1 Mentoring: to be scheduled individually, with dedicated trainer
  • Java Boot Camp Certification
    Java certificate: PCWorkshops Java certificate
    Java Oracle certificate:Java Oracle certificate: Programmer I
    Java Oracle certificate: Java Oracle certtificate: Programmer II

  • Practical Java Exercises
    Exercises weekly
    Many code examples, JavaFX Scene Builder examples
    Java, JavaFX Scene Builder, JUnit Exercises build into a final project
    Quizzes, tests, contests
  • Live Practical Project
    Upload and showcase your project
Where is the Java Boot Camp?

Online:, Connection details are emailed to you upon booking booking Classroom: Due to Covid Currently not available, but request per email

How to Pay
  • Java Boot Camp Price: £2100, Follow the booking link
  • Email us to pay in installments
Weekly topics and other details
Weekly Java lesson topic descriptions

  • Overview of Java Fundamentals:
  • Learn Java Object-Oriented Programming (OOP) principles;
  • Java Data Types, Variables:
  • Primitive types; Characters; Boolean; Working with variables and its scope; Type conversion and casting;
  • The String Class:
  • Using the String class and String methods.
  • Scanner Class:
  • Getting user input.
  • Java Operators and Expressions:
  • Introduction of operators; Arithmetic operators; Relational operators; Assignment operator; Logical operators; Increment and decrement operators.
  • Decision Making:
  • If statement; If - else statement; If- else if - else statement; Nested if - else; Switch Statements
  • Using Loops:
  • The while, do-while and the for loop; Enhanced for loop; Jump statements : break, continue; The return statement; Nesting loops.
  • Using Methods:
    Learn Java method basics. Defining Methods, Parameters, Returning values, Overloading methods, Calling methods. Encapsulation, getters and setters.

  • Using Methods
    Introduction of methods; Calling a Method.
  • Introduction to Classes and Objects:
    Creating a Class; Declaring Member Variables; Creating an Object; Using an Object;
  • Adding Instance variables;
  • Controlling accessibility; Naming conventions for class members.
  • Class Constructors; Parameterized Constructors;
  • Inheritance. Override. Polymorphism.
  • Abstraction. Interfaces and implementing interfaces.
  • The dot operator, this keyword, the static keywords, the super keyword.

  • Access control : private, public and protected; The final keyword;
  • Learn Java Nested Classes,
  • Inner Class Classes,
  • Local Classes,
  • Anonymous Classes,
  • Lambda Expressions
  • Method References,
  • When to Use Nested Classes, Local Classes, Anonymous Classes, and Lambda Expressions, Enum Types
  • Nested and inner classes; A stack class.

  • Learn Java Arrays:
    Working with arrays, 2-d arrays, iterating arrays.Using the for-each loop with Java Arrays
  • The Collection Interface
    This enables you to work with groups of objects; it is at the top of the collections hierarchy.
  • The List Interface
    This extends Collection and an instance of List stores an ordered collection of elements.
  • The Set
    This extends Collection to handle sets, which must contain unique elements.
  • The SortedSet
    This extends Set to handle sorted sets.
  • The Map
    This maps unique keys to values.

  • Collections Streams and Filters

  • Use java.util.Comparator and java.lang.Comparable interfaces
    Collections Streams and Filters
    Iterate using forEach methods of Streams and List
    Describe Stream interface and Stream pipeline
    Filter a collection by using lambda expressions
    Use method references with Streams
  • Lambda Built-in Functional Interfaces

  • Use the built-in interfaces included in the java.util.function package such as Predicate, Consumer, Function, and Supplier
    Develop code that uses primitive versions of functional interfaces
    Develop code that uses binary versions of functional interfaces
    Develop code that uses the UnaryOperator interface
  • Java Stream API

  • Develop code to extract data from an object using peek() and map() methods including primitive versions of the map() method
    Search for data by using search methods of the Stream classes including findFirst, findAny, anyMatch, allMatch, noneMatch
    Develop code that uses the Optional class
    Develop code that uses Stream data methods and calculation methods
    Sort a collection using Stream API
    Save results to a collection using the collect method and group/partition data using the Collectors class
    Use flatMap() methods in the Stream API

  • Handling Exceptions

  • Differentiate among checked exceptions, unchecked exceptions, and Errors
    Create a try-catch block and determine how exceptions alter normal program flow
    Describe the advantages of Exception handling
    Create and invoke a method that throws an exception
    Recognize common exception classes (such as NullPointerException, , ArithmeticException, ArrayIndexOutOfBoundsException, ClassCastException)
    Use try-catch and throw statements
    Use catch, multi-catch, and finally clauses
    Create custom exceptions and Auto-closeable resources
    Use Autoclose resources with a try-with-resources statement
    Test invariants by using assertions
  • Java I/O Fundamentals

  • Read and write data from the console
    Use BufferedReader, BufferedWriter,
    File, FileReader, FileWriter,
    FileInputStream, FileOutputStream,
    ObjectOutputStream, ObjectInputStream,
    and PrintWriter in the package.
  • Json Files

Application Programming Interface (API)
An Application Programming Interface (API) contains software building tools that facilitate interaction between systems. An API may be for a database system, operating system, computer hardware or a web-based system.

  • Java File I/O (NIO.2)

  • Use Path interface to operate on file and directory paths
    Use Files class to check, read, delete, copy, move, manage metadata of a file or directory
    Use Stream API with NIO.2
  • Working with Selected classes from the Java API

  • Manipulate data using the StringBuilder class
    String methods
    Create and manipulate Strings
    Random Functions
    Math Class
  • Use Date/Time API

  • Create and manage date-based and time-based events including a combination of date and time into a single object using LocalDate, LocalTime, LocalDateTime, Instant, Period, and Duration
    Work with dates and times across timezones and manage changes resulting from daylight savings including Format date and times values
    Define and create and manage date-based and time-based events using Instant, Period, Duration, and TemporalUnit
  • Localization

  • Read and set the locale by using the Locale object
    Create and read a Properties file
    Build a resource bundle for each locale and load a resource bundle in an application

  • Refer to the SQL 1-Day Course
  • Relational Database Concepts: What is a Relational Database? Relationships. Tables, Rows and Columns, Indexes, Primary Keys and Foreign Keys, Data Types
  • SQL Language Essentials: The SQL Select Statement
  • SQL Conditions and the Where Clause: >,<,>=,<=,=,, Not, Between, AND, OR, Like, Wildcards
  • The SQL Order By Clause
  • SQL Arithmetic Operations, Expression Queries
  • SQL Column Aliases
  • Limit/Top, Distinct
  • Working with Null Values
  • SQL Summarizing and Grouping Data:
    Aggregate Functions (Sum, Avg, Count, Max, Min)
    The Group By Clause
    The Having Clause
  • Querying Multiple Tables:
    Joining Tables, Inner Joins, Outer Joins, Self Joins, Full Joins, Cross Joins
    Alternative Join Syntax
  • Additional SQL Features:
    Combining Queries
    The Union, Intersect and Minus Operators
  • Basic Subqueries
  • SQL Queries, DML, DDL commands, stored procedures.
  • Introduction to Big Data, NoSQL databases and Hadoop.


  • JDBC

  • JDBC stands for Java Database Connectivity. JDBC is a Java API to connect and execute the query with the database. It is a part of JavaSE (Java Standard Edition). JDBC API uses JDBC drivers to connect with the database
    Connecting to databases and embedding SQL Queries to interact with database while coding, Defining the layout of the Java JDBC API, Connecting to a database by using a JDBC driver,
    Submitting queries and get results from the database, Specifying JDBC driver information externally,
    Create database, drop database using JDBC
    Create Table, Drop Table using JDBC
    Insert Records, Udate Records, Delete Records using JDBC
    Select records using JDBC


  • Life Cycle of a Thread
  • Thread Priorities
  • Create a Thread by Implementing a Runnable Interface
  • Create a Thread by Extending a Thread Class
  • Thread Methods
  • Major Java Multithreading Concepts
    While doing Multithreading programming in Java, you would need to have the following concepts very handy −
    What is thread synchronization?
    Handling interthread communication
    Handling thread deadlock
    Major thread operations

    Processes and Threads, Thread Objects
    Defining and Starting a Thread, Pausing Execution with Sleep
    Interrupts, Joins
    The SimpleThreads Example
    Synchronization, Thread Interference, Memory Consistency Errors, Synchronized Methods Intrinsic Locks and Synchronization,
    Atomic Access, Liveness, Deadlock, Starvation and Livelock
    Executors, Executor Interfaces, Thread Pools, Fork/Join, Concurrent Collections
    Guarded Blocks, Immutable Objects
    A Synchronized Class Example
    A Strategy for Defining Immutable Objects, High Level Concurrency Objects, Lock Objects

  • Concurrency - Overview

  • Overview: Different types of testing
    Principles of unit testing using JUnit
    JUnit Environment Setup
    JUnit Test Framework
    JUnit Basic Usage
    JUnit API
    Writing a Tests
    Using Assertion
    Execution Procedure
    Executing Tests
    Suite Test
    Ignore Test
    Time Test
    Exceptions Test
    Parameterized Test
    Plug with Ant
    JUnit Plug with Eclipse
    JUnit Extensions

  • Getting Started with JavaFX

  • What Is JavaFX
    What is JavaFX? JavaFX is a software platform for creating and delivering desktop applications, as well as rich Internet applications (RIAs). JavaFX is intended to replace Swing as the standard GUI library for Java SE.
    Get Acquainted with JavaFX Architecture
    Deployment JavaFX Guide
  • Graphics

  • Getting Started with JavaFX 3D Graphics
    Use the Image Ops API
    Work with Canvas
  • JavaFx User Interface Components

  • Work with JavaFx UI Controls
    Create Charts
    Add Text in JavaFx
    Add HTML Content
    Work with Layouts
    Skin Applications with CSS within JavaFx
    Build UI with FXML
    Handle Events
  • JavaFX Scene Builder 2

  • JavaFX Scene Builder Overview. JavaFX Scene Builder is a visual layout tool that lets users quickly design JavaFX application user interfaces, without coding. Users can drag and drop UI components with Scene Builder.
    Get Started with JavaFx Scene Builder
    Working with Scene Builder
    Design UI with Scene Builder
    Use JavaFx Scene Builder with Java IDEs
  • Install Scene Builder

  • Java Coding Boot Camp Self-Study Program:

  • Video TutorialsExcellent videos, short and easy
    Java Coding Examples All lessons are illustrated with code examples
    Manuals and Notes: Java, JDBC, JavaFx Scene BuilderIn-depth Reference materials
    Exercises Exercises after every class
    Tests Many tests to re-inforce

  • 1-1 Mentoring:

  • Book 1-1 Sessions Individually
    Dedicated trainer per student

  • Practical Projects:

  • Projects Combine the exercises into great projects
    Show case your projects on Github

    Java Boot Camp Course Materials
    • Java Boot Camp Certificate on completion
    • Java Boot Camp Videos
    • Java Boot Camp Notes
    • Java Code Examples
    • Practical Java Boot Camp exercises, Java Course Revision work
    • Mock tests and contests for the Java certificate
    Assitance with job search
    • Mock interview questions
    • Professionally drafted CV
    • Public project portfolio
    Book the Java Boot Camp
    About us
    Learn Java
    What's new in Java 17? Accelerating Java’s Adoption in the Cloud with continuous innovation that address the evolving needs of developers. To accelerate Java adoption in the cloud, Oracle recently introduced the Oracle Java Management Service
    What's new in Java 17? Updates and Improvements to Libraries JEP 306: Restore Always-Strict Floating-Point Semantics –
    What's new in Java 17? Future Proofing Java Programs JEP 403: Strongly Encapsulate JDK Internals – It will no longer be possible to relax the strong encapsulation of internal elements
    What's new in Java 17? Read the Java 17 technical blog :

    Request a Free Java Webinar Demo

    Try a 30 minutes webinar free. Choose you own topic from our course list.