Đề thi, bài tập trắc nghiệm online Lập trình javaĐề 15 – Bài tập, đề thi trắc nghiệm online Lập trình java Đăng vào 2 Tháng 5, 2026 bởi admin Đề 15 – Bài tập, đề thi trắc nghiệm online Lập trình java Đề 15 – Bài tập, đề thi trắc nghiệm online Lập trình java Số câu30Quiz ID10870 Làm bài Câu 1 1. Trong lập trình Java, từ khóa nào được sử dụng để khai báo một biến hằng số? A A. static B B. final C C. const D D. immutable Câu 2 2. Phương thức `equals()` trong Java được sử dụng để làm gì? A A. So sánh địa chỉ bộ nhớ của hai đối tượng B B. So sánh giá trị của hai đối tượng C C. Kiểm tra xem hai đối tượng có cùng kiểu dữ liệu không D D. Gán giá trị của đối tượng này cho đối tượng khác Câu 3 3. Đâu là cách khai báo một mảng các số nguyên trong Java? A A. int array[]; B B. int[] array; C C. array int[]; D D. array[] int; Câu 4 4. Lớp nào sau đây là lớp cha của tất cả các lớp trong Java? A A. SuperClass B B. MainClass C C. ObjectClass D D. Object Câu 5 5. Trong Java, cơ chế nào cho phép một lớp kế thừa các thuộc tính và phương thức từ một lớp khác? A A. Đóng gói (Encapsulation) B B. Đa hình (Polymorphism) C C. Kế thừa (Inheritance) D D. Trừu tượng (Abstraction) Câu 6 6. Interface trong Java khác với Abstract class ở điểm nào? A A. Interface có thể chứa các phương thức có thân, Abstract class thì không B B. Một lớp có thể implements nhiều Interface nhưng chỉ có thể extends một Abstract class C C. Interface sử dụng từ khóa 'extends', Abstract class sử dụng từ khóa 'implements' D D. Interface không thể chứa biến thành viên, Abstract class thì có thể Câu 7 7. Exception 'NullPointerException' thường xảy ra khi nào trong Java? A A. Truy cập một biến cục bộ chưa được khởi tạo B B. Truy cập một đối tượng thông qua một biến tham chiếu null C C. Chia một số cho 0 D D. Chuyển đổi kiểu dữ liệu không hợp lệ Câu 8 8. Vòng lặp `for-each` trong Java thường được sử dụng để làm gì? A A. Lặp qua các phần tử của một mảng hoặc Collection B B. Lặp vô hạn cho đến khi có điều kiện dừng C C. Lặp với số lần lặp xác định trước dựa trên điều kiện phức tạp D D. Thay thế cho vòng lặp `while` trong mọi trường hợp Câu 9 9. Phương thức `main()` trong Java có vai trò gì? A A. Phương thức khởi tạo của lớp B B. Điểm bắt đầu thực thi của chương trình Java C C. Phương thức hủy đối tượng khi không còn sử dụng D D. Phương thức định nghĩa các thuộc tính chung của lớp Câu 10 10. Trong Java, từ khóa `static` có ý nghĩa gì khi được sử dụng cho một biến thành viên? A A. Biến chỉ có thể được truy cập từ bên trong lớp B B. Biến thuộc về lớp chứ không phải là đối tượng cụ thể của lớp C C. Biến có giá trị không đổi trong suốt quá trình thực thi D D. Biến chỉ được khởi tạo một lần duy nhất Câu 11 11. Đâu là ví dụ về tính đóng gói (Encapsulation) trong Java? A A. Sử dụng interface để định nghĩa hành vi B B. Kế thừa thuộc tính từ lớp cha C C. Sử dụng private để ẩn dữ liệu và public methods để truy cập D D. Ghi đè phương thức của lớp cha Câu 12 12. Trong Java, 'constructor' là gì? A A. Một kiểu dữ liệu đặc biệt B B. Một phương thức đặc biệt được gọi khi một đối tượng của lớp được tạo C C. Một từ khóa dùng để khai báo lớp abstract D D. Một loại vòng lặp đặc biệt Câu 13 13. Phương thức `toString()` trong Java thường được dùng để làm gì? A A. So sánh hai đối tượng B B. Chuyển đổi một đối tượng thành chuỗi ký tự để hiển thị C C. Sao chép một đối tượng D D. Kiểm tra kiểu dữ liệu của đối tượng Câu 14 14. Trong Java, 'garbage collection' là gì? A A. Quá trình biên dịch mã nguồn Java thành bytecode B B. Quá trình quản lý bộ nhớ tự động, giải phóng bộ nhớ không còn được sử dụng C C. Quá trình kiểm tra và xử lý lỗi trong chương trình D D. Quá trình tối ưu hóa hiệu suất chương trình Câu 15 15. Đoạn code sau in ra kết quả gì: `System.out.println(5 + 2 + '3' + 4 + 5);` A A. 19 B B. 7345 C C. 739 D D. 52345 Câu 16 16. Trong Java, 'polymorphism' (đa hình) được thể hiện qua cơ chế nào? A A. Đóng gói (Encapsulation) B B. Kế thừa (Inheritance) và Interface C C. Trừu tượng (Abstraction) D D. Composition Câu 17 17. Annotation `@Override` trong Java được sử dụng để làm gì? A A. Khai báo một biến hằng số B B. Chỉ ra rằng một phương thức ghi đè phương thức của lớp cha C C. Đánh dấu một phương thức là tĩnh D D. Tạo ra một constructor cho lớp Câu 18 18. Trong Java Collections Framework, 'List', 'Set', và 'Map' là gì? A A. Các kiểu dữ liệu nguyên thủy B B. Các interface định nghĩa các cấu trúc dữ liệu khác nhau C C. Các lớp cơ sở cho xử lý ngoại lệ D D. Các từ khóa để quản lý bộ nhớ Câu 19 19. Phương thức `parseInt()` thuộc lớp nào trong Java và dùng để làm gì? A A. Lớp `String`, dùng để chuyển đổi chuỗi thành số nguyên B B. Lớp `Integer`, dùng để chuyển đổi chuỗi thành số nguyên C C. Lớp `Math`, dùng để tính toán số nguyên D D. Lớp `System`, dùng để đọc số nguyên từ đầu vào Câu 20 20. Đâu là cách tạo một luồng (Thread) trong Java? A A. Kế thừa từ lớp `Runnable` B B. Hiện thực interface `Thread` C C. Kế thừa từ lớp `Thread` hoặc hiện thực interface `Runnable` D D. Sử dụng từ khóa `thread` trước khai báo lớp Câu 21 21. Trong Java, 'serialization' là gì? A A. Quá trình mã hóa dữ liệu để bảo mật B B. Quá trình chuyển đổi đối tượng thành một chuỗi byte để lưu trữ hoặc truyền tải C C. Quá trình kiểm tra và xác thực dữ liệu đầu vào D D. Quá trình tối ưu hóa hiệu suất truy vấn dữ liệu Câu 22 22. Lệnh `try-catch-finally` trong Java được sử dụng để làm gì? A A. Khai báo biến cục bộ B B. Xử lý ngoại lệ (exception handling) C C. Định nghĩa vòng lặp D D. Tạo ra một interface Câu 23 23. Giả sử bạn có một lớp `Dog` kế thừa từ lớp `Animal`. Khi bạn tạo một đối tượng `Dog` và gán cho biến tham chiếu kiểu `Animal`, bạn có thể gọi được phương thức nào? A A. Chỉ các phương thức được định nghĩa trong lớp `Dog` B B. Chỉ các phương thức được định nghĩa trong lớp `Animal` C C. Các phương thức được định nghĩa trong cả `Animal` và `Dog`, nhưng ưu tiên phương thức của `Dog` nếu ghi đè D D. Không thể gọi phương thức nào vì kiểu tham chiếu và kiểu đối tượng khác nhau Câu 24 24. Trong Java, 'Generic' được giới thiệu để giải quyết vấn đề gì? A A. Tăng tốc độ thực thi chương trình B B. Cung cấp kiểu an toàn (type safety) tại thời điểm biên dịch cho Collections C C. Giảm dung lượng bộ nhớ sử dụng D D. Đơn giản hóa cú pháp khai báo biến Câu 25 25. JDBC (Java Database Connectivity) được sử dụng để làm gì? A A. Xây dựng giao diện người dùng đồ họa B B. Kết nối và tương tác với cơ sở dữ liệu từ ứng dụng Java C C. Quản lý bộ nhớ trong Java D D. Tạo ra các luồng thực thi song song Câu 26 26. Trong Java, 'lambda expression' là gì? A A. Một loại vòng lặp mới B B. Một cách viết ngắn gọn cho anonymous inner class, đặc biệt là functional interface C C. Một cách khai báo biến hằng số D D. Một cơ chế xử lý ngoại lệ mới Câu 27 27. Framework Spring Boot trong Java được sử dụng chủ yếu để làm gì? A A. Phát triển ứng dụng desktop B B. Đơn giản hóa việc xây dựng ứng dụng web và microservices dựa trên Spring Framework C C. Xây dựng giao diện người dùng di động D D. Quản lý bộ nhớ cho ứng dụng Java Câu 28 28. Maven hoặc Gradle là công cụ gì trong phát triển Java? A A. IDE (Integrated Development Environment) B B. Build tool và dependency management tool C C. Công cụ debug code D D. Công cụ quản lý cơ sở dữ liệu Câu 29 29. Trong lập trình hướng đối tượng (OOP), nguyên tắc 'SOLID' là viết tắt của những nguyên tắc nào? A A. Simple, Organized, Logical, Iterative, Detailed B B. Single Responsibility, Open/Closed, Liskov Substitution, Interface Segregation, Dependency Inversion C C. Secure, Optimized, Lightweight, Independent, Durable D D. Scalable, Observable, Understandable, Reliable, Deployable Câu 30 30. Giả sử bạn có một danh sách các đối tượng `Student` và bạn muốn sắp xếp danh sách này theo tên sinh viên. Bạn sẽ sử dụng interface nào trong Java để thực hiện việc này? A A. Iterable B B. Comparable hoặc Comparator C C. Collection D D. Serializable Đề 14 – Bài tập, đề thi trắc nghiệm online Chi tiết máy Đề 1 – Bài tập, đề thi trắc nghiệm online Toàn cầu hóa và văn hóa