Java SE 21 Programming

SKU: OCJSE21PC

573.330 kr.

This comprehensive course covers essential and advanced concepts in Java programming, using Java SE 21. It is designed to build a solid foundation in Java fundamentals, object-oriented programming, data handling, multithreading, and cloud-based Java applications. Through interactive lectures, hands-on labs, and exercises, participants will master the skills necessary to develop, maintain, and deploy Java applications effectively.

This is an accelerated course aimed at experienced programmers. Learners who are new to programming should consider sitting a combination of OCJSE21PI ‘Java SE 21: Programming I’ and OCJSE21PII ‘Java SE 21: Programming II’ instead.

Forkröfur

It is recommended that you have previously studied programming languages, or have an existing knowledge of Java Programming.

Nemandi mun læra eftirfarandi

By the end of this course, participants will be able to:

  • Understand and implement Java fundamentals and syntax.
  • Apply object-oriented principles using Java.
  • Develop, debug, and maintain Java applications.
  • Handle data with Java APIs, including dates, times, and text.
  • Work with multithreading, concurrency, and asynchronous processing.
  • Utilise Java for database connectivity and security applications.
  • Implement and deploy Java applications in cloud environments.

Samantekt

Module One: Introduction to Java

  • Overview of Java programming and its ecosystem
  • Object-oriented principles: classes, objects, inheritance, encapsulation
  • Working with Java APIs and keywords
  • Understanding Java syntax, naming conventions, and compiling/executing programs

Module Two: Primitive types, operators, and flow control statements

  • Java primitives, operators, and flow control structures
  • Using JShell (REPL tool) for interactive testing
  • Control flow with if/else, switch, and ternary operators

Module Three: Text, date, time, and numeric objects

  • String manipulation, indexing, and text blocks
  • Handling dates and times with the Local Date-Time API
  • Using BigDecimal for precise numeric operations

Module Four: Classes and objects

  • Introduction to UML and modelling classes
  • Designing and creating classes and objects
  • Using IntelliJ IDE for Java development

Module Five: Improved class design

  • Method overloading, constructors, and encapsulation
  • Immutable classes and the use of enumerations
  • Memory allocation and parameter passing in Java

Module Six: Implement inheritance and use records

  • Inheritance and polymorphism basics
  • Abstract classes, final classes, and sealed classes
  • Understanding Java records and pattern matching

Module Seven: Interfaces and generics

  • Implementing interfaces and generics for type safety
  • Working with functional interfaces and lambda expressions
  • Examples with Comparable, Comparator, and Cloneable interfaces

Module Eight: Arrays and loops

  • Declaring, initializing, and managing arrays
  • Iterating over arrays with various loop structures
  • Advanced loop control: nested loops, break, and continue

Module Nine: Collections

  • Java Collection API: Lists, Sets, Deques, and Maps
  • Managing collection contents and concurrent collections
  • Introduction to legacy collection classes

Module Ten: Nested classes and lambda expressions

  • Types of nested classes: static, inner, local, and anonymous
  • Lambda expressions and method references
  • Default and static methods in functional interfaces

Module Eleven: Java Streams API

  • Stream API and functional processing with streams
  • Filtering, mapping, and reducing data in streams
  • Parallel stream processing and performance considerations

Module Twelve: Exception handling, logging, and debugging

  • Java exception handling and custom exceptions
  • Using the Java Logging API for error tracking
  • Debugging techniques and using assertions

Module Thirteen: Java IO API

  • Reading and writing binary and character data
  • Working with files and file systems
  • Serialization and handling sensitive information

Module Fourteen: Java concurrency and multithreading

  • Concurrency fundamentals and thread management
  • Working with the Executor Service for concurrent tasks
  • Locking mechanisms and ensuring thread safety

Module Fifteen: Modules and deployment

  • Modular programming in Java
  • Compiling, packaging, and deploying Java applications
  • Creating custom runtime images for Java applications

Module Sixteen: Advanced topics and specialisations

  • Java database connectivity (JDBC) and SQL integration
  • Java security essentials and best practices
  • Patterns for advanced generics and cloud deployment with Oracle