Learning Objective | Theory / Lesson | Working Example | Reviewed | |||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|
Java Basics | 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Ā
| ||||
Java Data Types | Declare and initialise 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. | ||||
Operators and Decision Constructs | Use Java operators; including parentheses to override operator precedence | |||
Test equality between Strings and other objects using == and equals () | ||||
Create if and if/else and ternary constructs | ||||
Use a switch statement | ||||
Arrays | Declare, instantiate, initialise and use a one-dimensional array | |||
Declare, instantiate, initialise and use multi-dimensional array | ||||
Loops | 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 | ||||
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 | ||||
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 super and this to access objects and constructors | ||||
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 | ||||
Describe the advantages of Exception handling | ||||
Create and invoke a method that throws an exception | ||||
"Recognise common exception classes (such as NullPointerException, ArithmeticExcpetion, ArrayIndexOutOfBoundsException, ClassCastException)" | ||||
Java API Classes | Manipulate data using the StringBuilder class and its methods | |||
Creating and manipulating Strings | ||||
Create and manipulate calendar data using classes from java.time.LocalDateTime, java.time.LocalDate, java.time.LocalTime, java.time.format.DateTimeFormatter, java.time.Period | ||||
Declare and use an ArrayListof a given type | ||||
Write a simple Lambda expression that consumes a Lambda Predicate expression | ||||