Course Information
($8980)
Course Overview
在現今的應用範圍上,Java 語言可說是十分廣泛,從 Windows、Linux 以至手機,都有應用 Java 技術。因此 Java 已經成為跨平台及網路軟件的首選。事實上 Java 技術的簡單性和跨平台能力使其成為 I.T. 程式編寫界的標準,這亦是 Java 在 I.T. 界認受性廣泛的主要原因。
Java 是物件導向 (Object-Oriented) 開發模式的程式語言。物件導向開發模式是現今程式語言的主流。Java 作為易學及又有廣泛應用性的程式語言,無疑是初學物件導向開發模式的首選。通過學習 Java 從而了解物件導向開發模式後,學習其他程式設計語言便可以更易上手。
Java SE 21 是繼 Java SE 11 及 Java SE 17 之後的一個長期支持 (Long Term Support, LTS) 版本。長期支持版本比其他版本可以在較長的時間內繼續獲得安全和維護的更新 ,從而增加了編寫軟件過程及周期的可靠度。除了承繼了 Java SE 17 新增的功能外,Java SE 21 也增加了一些額外功能。這些新功能可令編寫的程式更簡單、易明以及方便維護。
Java SE 21 不提供低階的 OCA 認證,考生可以通過一科考試後,就直接取得高階的 OCP 認證。
What You’ll Learn
課程名稱:OCP: Java SE 21 Developer 認證課程
Handling Date, Time, Text, Numeric and Boolean Values
- Use primitives and wrapper classes. Evaluate arithmetic and boolean expressions, using the Math API and by applying precedence rules, type conversions, and casting.
- Manipulate text, including text blocks, using String and StringBuilder classes.
- Manipulate date, time, duration, period, instant and time-zone objects including daylight saving time using Date-Time API.
Controlling Program Flow
- Create program flow control constructs including if/else, switch statements and expressions, loops, and break and continue statements.
Using Object-Oriented Concepts in Java
- Declare and instantiate Java objects including nested class objects, and explain the object life-cycle including creation, reassigning references, and garbage collection.
- Create classes and records, and define and use instance and static fields and methods, constructors, and instance and static initializers.
- Implement overloaded methods, including var-arg methods.
- Understand variable scopes, apply encapsulation, and create immutable objects. Use local variable type inference.
- Implement inheritance, including abstract and sealed types as well as record classes. Override methods, including that of the Object class. Implement polymorphism and differentiate between object type and reference type. Perform reference type casting, identify object types using the instanceof operator, and pattern matching with the instanceof operator and the switch construct.
- Create and use interfaces, identify functional interfaces, and utilize private, static, and default interface methods.
- Create and use enum types with fields, methods, and constructors.
Handling Exceptions
- Handle exceptions using try/catch/finally, try-with-resources, and multi-catch blocks, including custom exceptions.
Working with Arrays and Collections
- Create arrays, List, Set, Map and Deque collections, and add, remove, update, retrieve and sort their elements.
Working with Streams and Lambda expressions
- Use Java object and primitive Streams, including lambda expressions implementing functional interfaces, to create, filter, transform, process, and sort data.
- Perform decomposition, concatenation, and reduction, and grouping and partitioning on sequential and parallel streams.
Packaging and Deploying Java Code
- Define modules and expose module content, including that by reflection, and declare module dependencies, define services, providers, and consumers.
- Compile Java code, create modular and non-modular jars, runtime images, and implement migration to modules using unnamed and automatic modules.
Managing Concurrent Code Execution
- Create both platform and virtual threads. Use both Runnable and Callable objects, manage the thread lifecycle, and use different Executor services and concurrent API to run tasks.
- Develop thread-safe code, using locking mechanisms and concurrent API.
- Process Java collections concurrently and utilize parallel streams.
Using Java I/O API
- Read and write console and file data using I/O streams.
- Serialize and de-serialize Java objects.
- Construct, traverse, create, read, and write Path objects and their properties using the java.nio.file API.
Implementing Localization
- Implement localization using locales and resource bundles. Parse and format messages, dates, times, and numbers, including currency and percentage values.