OLHub

Java OO & Functional

Kế thừa, exception, generics, streams — viết Java idiomatic

Tier 2 · Mid4 module · 26 bài · 9h

Sau khoá này bạn sẽ

Kết quả học tập

  • Compare inheritance vs composition và choose pattern phù hợp
  • Implement generic class/method với bounded type parameter và wildcards
  • Diagnose ConcurrentModificationException và refactor sang fail-safe iterator
  • Refactor imperative loop sang Stream pipeline với method reference
  • Choose checked vs unchecked exception cho từng business case

Nội dung

4 modules

  1. 01

    Kế thừa & Đa hình

    extends, super, override, dynamic dispatch, abstract class vs interface, sealed class (Java 17+), và vì sao 'composition over inheritance' không phải khẩu hiệu rỗng.

    8 bài · 2.6h
  2. 02

    Exception Handling

    try/catch/finally, checked vs unchecked, try-with-resources, custom exception, vì sao nuốt exception là anti-pattern, và exception ở cấp bytecode (exception table).

    6 bài · 2h
  3. 03

    Generics & Collections

    Generics, type erasure, wildcard (? extends, ? super), PECS rule, Collections framework (List, Set, Map), khi nào chọn ArrayList vs LinkedList vs HashMap vs TreeMap.

    6 bài · 2.1h
  4. 04

    Stream API & Lambda

    Lambda, functional interface, Stream API (map/filter/reduce), Collectors, Optional. Xử lý dữ liệu theo functional style — cốt lõi của Java modern, nền tảng để đọc code enterprise và framework như Spring WebFlux.

    6 bài · 2.3h