CodeGym
Khuyến mãi
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
  • Tạo ngoại lệ tùy chỉnh

    JAVA 25 SELF
    Cấp độ 24,Bài học 1
    Trong bài giảng này, chúng ta sẽ tìm hiểu khi nào và vì sao nên tạo ngoại lệ tùy chỉnh trong Java: cách lựa chọn giữa Exception và RuntimeException, thiết kế các constructor với tham số String message và Throwable cause, thêm các trường hữu ích và sử dụng chúng đúng cách trong mã. Chúng ta sẽ bàn về cách đặt tên, phạm vi trách nhiệm, cách tài liệu hóa bằng throws và các lỗi thường gặp. Ngoài ra — vì sao đôi khi ném ngoại lệ tốt hơn là trả về false.
    Có sẵn
  • Chuỗi ngoại lệ (Exception Chaining)

    JAVA 25 SELF
    Cấp độ 24,Bài học 2
    Hướng dẫn từng bước về exception chaining trong Java: cách “bọc” ngoại lệ đúng cách và truyền nguyên nhân ( cause) để không làm mất ngăn xếp lời gọi. Chúng ta sẽ xem xét các constructor với tham số Throwable, cách sử dụng getCause() và printStackTrace(), đưa ra ví dụ với UserManagementException và thảo luận các lỗi thường gặp — từ việc ném ngoại lệ mới mà không có nguyên nhân đến việc “nuốt” lỗi.
    Có sẵn
  • Xử lý ngoại lệ nâng cao và các thực tiễn tốt nhất

    JAVA 25 SELF
    Cấp độ 24,Bài học 3
    Xử lý ngoại lệ nâng cao trong Java: nhiều khối catch, cú pháp multi-catch và các quy tắc sử dụng, thứ tự bắt từ cụ thể đến tổng quát, cũng như các thực tiễn tốt nhất — từ việc không được “nuốt” lỗi đến ném ra các ngoại lệ cụ thể nhất có thể và tránh dùng ngoại lệ như cơ chế điều khiển luồng. Tất cả đều đi kèm ví dụ, phân tích lỗi điển hình và gợi ý về phong cách.
    Có sẵn
  • Ngoại lệ như một phần của API và try-with-resources

    JAVA 25 SELF
    Cấp độ 24,Bài học 4
    Trong bài giảng này, chúng ta sẽ phân tích vì sao ngoại lệ là một phần của hợp đồng phương thức trong Java, cách ghi tài liệu chúng qua Javadoc với chú thích @throws, khi nào chọn ngoại lệ checked và unchecked, cũng như học cách làm việc an toàn với tài nguyên bằng cấu trúc try-with-resources. Chúng ta sẽ thảo luận vai trò của giao diện AutoCloseable, đưa ra các ví dụ thực tiễn và những lỗi điển hình.
    Có sẵn
  • Nhập môn Git: tại sao cần kiểm soát phiên bản

    JAVA 25 SELF
    Cấp độ 25,Bài học 0
    Trong bài giảng này, bạn sẽ tìm hiểu Git là gì và vì sao nó cần thiết cho lập trình viên hiện đại, tạo kho (repository) đầu tiên của riêng bạn trên GitHub và học cách cấu hình môi trường làm việc trong IDE để làm việc hiệu quả với kiểm soát phiên bản.
    Có sẵn
  • Chu trình hằng ngày của lập trình viên: Commit, Push và .gitignore

    JAVA 25 SELF
    Cấp độ 25,Bài học 1
    Trong bài giảng này, bạn sẽ nắm được chu trình làm việc cơ bản: học cách lưu thay đổi (commit), đẩy chúng lên GitHub (push) và cấu hình bỏ qua các tệp không cần thiết bằng .gitignore.
    Có sẵn
  • Thử nghiệm an toàn: làm việc với các nhánh

    JAVA 25 SELF
    Cấp độ 25,Bài học 2
    Trong bài giảng này, bạn sẽ học cách tạo các nhánh riêng cho nhiệm vụ mới, chuyển đổi giữa chúng, gộp các thay đổi và, quan trọng nhất — tự tin giải quyết xung đột gộp bằng các công cụ mạnh mẽ của IDE.
    Có sẵn
  • Ma thuật của Pull Requests

    JAVA 25 SELF
    Cấp độ 25,Bài học 3
    Trong bài giảng này, bạn sẽ biết Pull Request (PR) là gì, tại sao đây là công cụ chủ chốt của phát triển theo nhóm, và học cách tạo cũng như xem PR ngay trong IDE của bạn.
    Có sẵn
  • Công cụ của chuyên gia và xử lý sự cố

    JAVA 25 SELF
    Cấp độ 25,Bài học 4
    Trong bài giảng này, bạn sẽ học cách hoàn tác thay đổi, xóa các commit lỗi, tạm thời cất công việc của mình và sử dụng lịch sử dự án để tìm kiếm thông tin — tất cả bằng các công cụ trong IDE của bạn.
    Có sẵn
  • Tổng quan về collection trong Java — vì sao cần collection

    JAVA 25 SELF
    Cấp độ 26,Bài học 0
    Bài giảng này là phần tổng quan nhanh và trực quan về collection trong Java. Chúng ta phân tích vì sao mảng cố định là chưa đủ, collection giúp gì, và cách lựa chọn giữa List, Set và Map. Chúng tôi sẽ đưa ra các ví dụ “sống” với ArrayList và HashMap, so sánh mảng với collection (các thao tác add(), remove(), contains(), sắp xếp bằng Collections.sort()), và cuối cùng phân tích các lỗi thường gặp: raw types, import, nhầm lẫn giữa length và size(), kỳ vọng về thứ tự và kiểu nguyên thủy trong collection.
    Có sẵn
  • List: ArrayList và LinkedList, các thao tác cơ bản

    JAVA 25 SELF
    Cấp độ 26,Bài học 1
    Bài giảng này là phần giới thiệu thực hành về giao diện List và các hiện thực phổ biến của nó: ArrayList và LinkedList. Chúng ta sẽ tìm hiểu cách tạo danh sách, gọi các phương thức cơ bản ( add, get, set, remove, size, clear), duyệt phần tử và tìm kiếm chúng. So sánh hiệu năng các thao tác và bàn về thời điểm nên chọn từng hiện thực. Cuối cùng — các lỗi thường gặp và cách tránh ( IndexOutOfBoundsException, ConcurrentModificationException, triển khai đúng equals và làm việc với generics).
    Có sẵn
  • Map: HashMap và TreeMap, khóa và giá trị

    JAVA 25 SELF
    Cấp độ 26,Bài học 2
    Trong bài này, chúng ta tìm hiểu về map trong Java: giao diện Map, các thao tác chính ( put, get, remove, containsKey), khác biệt giữa HashMap (truy cập nhanh) và TreeMap (sắp xếp theo khóa), cách duyệt phần tử qua keySet(), values() và entrySet(), cũng như các lỗi thường gặp: kỳ vọng có thứ tự trong HashMap, dùng khóa null trong TreeMap và vấn đề với ConcurrentModificationException. Nhiều ví dụ mã và các kịch bản thực tiễn sẽ giúp bạn tự tin áp dụng Map trong dự án của mình.
    Có sẵn
  • 1
  • ...
  • 11
  • 12
  • 13
  • 14
  • 15
  • ...
  • 30
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