Java tutorials

Choose from the following two formats: 

  1. A 12 week rolling course for those that require more than a refresher course and want to spend more time exploring Java. This course will focus on helping the student build confidence in writing their own programs and solving problems.

   2. A personal tutor service where an expert mentor will work with you one to one to improve your understanding of Java and help your form solutions to questions.

Topics

Getting Started

  • Define the scope of variables
  • Define the structure of a Java class
  • Create executable Java applications with a main method; run a Java program from the command line; including console output.
  • Import other Java packages to make them accessible in your code
  • Compare and contrast the features and components of Java such as: platform independence, object orientation, encapsulation, etc


Working With Java Data Types

  • Declare and initialize variables (including casting of primitive data types)
  • Differentiate between object reference variables and primitive variables
  • Know how to read or write to object fields
  • Explain an Object's Lifecycle (creation, "dereference by reassignment" and garbage collection)
  • Develop code that uses wrapper classes such as Boolean, Double, and Integer.


Using Operators and Decision Constructs

  • Use Java operators; including parentheses to override operator precedence
  • Test equality between Strings and other objects using == and equals method
  • Use a switch statement


Creating and Using Arrays

  • Declare, instantiate, initialize and use a one-dimensional array
  • Declare, instantiate, initialize and use multi-dimensional array


Using Loop Constructs

  • Create and use while loops
  • Create and use for loops including the enhanced for loop
  • Create and use do/while loops
  • Compare loop constructs
  • Use break and continue


Working with Methods and Encapsulation

  • Create methods with arguments and return values; including overloaded methods
  • Apply the static keyword to methods and fields
  • Create and overload constructors; including impact on default constructors
  • Apply access modifiers
  • Apply encapsulation principles to a class
  • Determine the effect upon object references and primitive values when they are passed into methods that change the values


Working with Inheritance

  • Describe inheritance and its benefits
  • Develop code that demonstrates the use of polymorphism; including overriding and object type versus reference type
  • Determine when casting is necessary
  • Use abstract classes and interfaces


Handling Exceptions

  • Differentiate among checked exceptions, unchecked exceptions, and Errors
  • Create a try-catch block and determine how exceptions alter normal program flow
  • Recognize common exception classes (such as NullPointerException, ArithmeticException, ArrayIndexOutOfBoundsException etc)