CodeGym
AI Academy
Khuyến mãi
CodeGym University
Học tập
Khóa học
Bài tập
Khảo sát & Bài kiểm tra
Trò chơi
Trợ giúp
Lịch
Cộng đồng
Người dùng
Diễn đàn
Trò chuyện
Bài viết
Câu chuyện thành công
Hoạt động
Đánh giá
Gói đăng ký
Chủ đề sáng

Bài học

  • Đánh giá
  • Về chúng tôi
Bắt đầu
Bắt đầu học
Bắt đầu học ngay
  • Tiến độ của tôi
  • Khóa học
  • Bản đồ Quest
  • Bài học
  • Giới thiệu về biểu thức lambda

    JAVA 25 SELF
    Cấp độ 21,Bài học 0
    Trong bài giảng này, chúng ta sẽ tìm hiểu biểu thức lambda trong Java: chúng là gì và dùng để làm gì, cú pháp và các rút gọn trông như thế nào, lambda liên hệ với functional interface ( @FunctionalInterface) ra sao, khác gì so với lớp ẩn danh, và cơ chế bắt biến (capture) hoạt động thế nào ( final / effectively final). Qua các ví dụ thực tế với Runnable, Consumer, Comparator, Function và Stream API, bạn sẽ thấy cách viết ngắn gọn và dễ đọc hơn. Kết thúc bằng mục “Các lỗi thường gặp” và mẹo để tránh chúng.
    Có sẵn
  • Method References (::): tham chiếu tới phương thức

    JAVA 25 SELF
    Cấp độ 21,Bài học 1
    Hướng dẫn ngắn gọn về tham chiếu phương thức trong Java: khi nào và cách dùng method reference thay cho lambda. Ta xem 4 dạng: Class::method (static và “trên instance”), object::method, Class::new. Ta sẽ hiểu cách khớp chữ ký với các functional interface, so sánh với biểu thức lambda, xem ví dụ thực tế với forEach, sort, map và bàn về các lỗi thường gặp (không khớp chữ ký, nạp chồng phương thức, v.v.).
    Có sẵn
  • Các phương thức default trong interface

    JAVA 25 SELF
    Cấp độ 21,Bài học 2
    Trong bài giảng này, chúng ta tìm hiểu vì sao trong Java 8 xuất hiện các phương thức default trong interface, cách chúng cho phép phát triển API mà không làm hỏng mã cũ, cú pháp của chúng (từ khóa default đứng trước kiểu trả về) và hành vi trong các lớp triển khai. Qua các ví dụ từ thư viện chuẩn ( List: forEach, replaceAll, sort) chúng ta xem xét cách áp dụng trong thực tế. Cũng sẽ bàn về các hạn chế: không thể override các phương thức của Object ( equals/ hashCode/ toString), cùng các quy tắc giải quyết xung đột khi triển khai nhiều interface và những lỗi thường gặp.
    Có sẵn
  • Phương thức static trong interface

    JAVA 25 SELF
    Cấp độ 21,Bài học 3
    Phân tích cách và lý do các interface trong Java có các static-method: cú pháp khai báo, khác biệt so với các phương thức default, những hạn chế chính (không được kế thừa, không thể ghi đè, chỉ gọi qua tên interface, chỉ truy cập các thành viên static, hỗ trợ private static từ Java 9+). Thực hành với Movable.resetPosition(), tiện ích Logger, các factory bộ sưu tập List.of()/ Set.of()/ Map.of() và utility Comparator.reverseOrder(). Cuối cùng — các lỗi thường gặp và cách tránh chúng.
    Có sẵn
  • Các giao diện trong thư viện chuẩn: Comparable, Serializable, v.v.

    JAVA 25 SELF
    Cấp độ 21,Bài học 4
    Phân tích các giao diện then chốt của thư viện chuẩn Java và lý do chúng cần thiết trong dự án thực tế: sắp xếp “thứ tự tự nhiên” qua Comparable<T> và quy tắc tùy chỉnh với Comparator<T>, tuần tự hóa (serialization) đối tượng bằng Serializable, quản lý tài nguyên an toàn qua AutoCloseable, duyệt bộ sưu tập nhờ Iterable<T>, cũng như các marker như Cloneable và các listener sự kiện. Qua những ví dụ đậm đặc, ta sẽ thấy chữ ký phương thức đúng ( compareTo, compare, close, iterator) và các lỗi điển hình nên tránh.
    Có sẵn
Học
  • Đăng ký
  • Khóa học Java
  • Trợ giúp bài tập
  • Bảng giá
  • Cú pháp Java
Cộng đồng
  • Người dùng
  • Bài viết
  • Diễn đàn
  • Trò chuyện
  • Câu chuyện thành công
  • Hoạt động
  • Chương trình giới thiệu
Công ty
  • Về chúng tôi
  • Liên hệ
  • Đánh giá
  • Phòng báo chí
  • CodeGym cho EDU
  • Câu hỏi thường gặp
  • Hỗ trợ
CodeGymCodeGym là một khóa học trực tuyến để học lập trình Java từ đầu. Khóa học này là cách hoàn hảo để nắm vững Java cho người mới bắt đầu. Nó chứa 1200+ bài tập với kiểm tra ngay lập tức và phạm vi lý thuyết cơ bản cần thiết về Java. Để giúp bạn thành công trong học tập, chúng tôi đã triển khai một bộ tính năng tạo động lực: bài kiểm tra, dự án lập trình, nội dung về phương pháp học hiệu quả, và hỗ trợ sự nghiệp lập trình viên Java.
Theo dõi chúng tôi
Ngôn ngữ giao diện
English Deutsch Español हिन्दी Français Português Polski বাংলা 简体中文 मराठी தமிழ் Italiano Bahasa Indonesia 繁體中文 Nederlands 日本語 한국어 Bulgarian Danish Hungarian Basa Jawa Malay Norwegian Romanian Swedish Telugu Thai Українська Filipino Turkish Azərbaycan Русский
Vietnamese
"Lập trình viên được tạo nên, không sinh ra" © 2026 CodeGym
MastercardVisa
"Lập trình viên được tạo nên, không sinh ra" © 2026 CodeGym