Manipulate numeric, text, date and time values using appropriate Java primitives and classes
Organise Java code using classes, interfaces and enumerations
Implement program logic using variables, arrays, conditional and loop constructs
Create Java applications that leverage the object-oriented features of the Java language, such as encapsulation, inheritance, and polymorphism
Use Lambda Expressions
Use Java Collections API
Process information using Streams API
Use Java Concurrency API
Implement error propagation and handling
Implement input/output (I/O) functionality to read and write binary and text data
Manipulate files, directories and file systems
Deploy and execute Java applications using a modularized approach