Đề thi, bài tập trắc nghiệm online Lập trình java – Đề 10

0

Bạn đã sẵn sàng chưa? 45 phút làm bài bắt đầu!!!

Bạn đã hết giờ làm bài! Xem kết quả các câu hỏi đã làm nhé!!!


Đề thi, bài tập trắc nghiệm online Lập trình java

Đề 10 - Bài tập, đề thi trắc nghiệm online Lập trình java

1. Trong Java, từ khóa nào được sử dụng để tạo một thể hiện (instance) của một lớp?

A. class
B. interface
C. new
D. extends


2. Phương thức `main()` trong Java có kiểu trả về là gì?

A. int
B. String
C. void
D. boolean


3. Đâu là kiểu dữ liệu nguyên thủy (primitive data type) trong Java?

A. String
B. Integer
C. float
D. Object


4. 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 của một lớp khác?

A. Đóng gói (Encapsulation)
B. Đa hình (Polymorphism)
C. Kế thừa (Inheritance)
D. Trừu tượng (Abstraction)


5. Giao diện (interface) trong Java được sử dụng để làm gì?

A. Định nghĩa hành vi mà các lớp phải thực hiện.
B. Tạo ra các đối tượng.
C. Khai báo biến toàn cục.
D. Thực hiện đa kế thừa cho lớp.


6. Phương thức `equals()` trong Java được sử dụng để so sánh cái gì giữa hai đối tượng?

A. Địa chỉ bộ nhớ của đối tượng.
B. Kiểu dữ liệu của đối tượng.
C. Giá trị nội dung của đối tượng.
D. Tham chiếu đối tượng.


7. Ngoại lệ (Exception) trong Java là gì?

A. Một loại lỗi cú pháp.
B. Một sự kiện bất thường xảy ra trong quá trình thực thi chương trình.
C. Một cách để tối ưu hóa hiệu suất.
D. Một tính năng bảo mật của Java.


8. Vòng lặp `for-each` trong Java thường được sử dụng để làm gì?

A. Lặp qua các phần tử của một mảng hoặc tập hợp.
B. Thực hiện các phép tính toán phức tạp.
C. Định nghĩa các hàm đệ quy.
D. Xử lý ngoại lệ.


9. Từ khóa `static` trong Java được sử dụng để khai báo thành viên như thế nào?

A. Thành viên chỉ có thể truy cập từ lớp con.
B. Thành viên thuộc về lớp chứ không phải thể hiện của lớp.
C. Thành viên có thể thay đổi giá trị sau khi khởi tạo.
D. Thành viên chỉ được truy cập trong cùng một gói.


10. Trong lập trình hướng đối tượng, tính đóng gói (encapsulation) thể hiện điều gì?

A. Khả năng một đối tượng có nhiều hình thức.
B. Che giấu thông tin và hành vi bên trong đối tượng, chỉ cho phép truy cập thông qua giao diện công khai.
C. Khả năng tái sử dụng mã nguồn thông qua kế thừa.
D. Chia nhỏ chương trình thành các hàm nhỏ hơn.


11. Lớp `String` trong Java là kiểu dữ liệu gì?

A. Kiểu dữ liệu nguyên thủy.
B. Kiểu dữ liệu tham chiếu.
C. Kiểu dữ liệu số.
D. Kiểu dữ liệu logic.


12. Phương thức `super()` trong Java được sử dụng để làm gì trong lớp con?

A. Gọi một phương thức static của lớp cha.
B. Truy cập các biến private của lớp cha.
C. Gọi constructor của lớp cha.
D. Tạo một đối tượng mới của lớp cha.


13. Trong Java Collections Framework, `ArrayList` và `LinkedList` khác nhau cơ bản ở điểm nào?

A. `ArrayList` là giao diện, `LinkedList` là lớp triển khai.
B. `ArrayList` truy cập phần tử nhanh hơn bằng chỉ số, `LinkedList` thêm/xóa phần tử ở đầu/cuối nhanh hơn.
C. `ArrayList` có kích thước cố định, `LinkedList` có kích thước động.
D. `ArrayList` chỉ lưu trữ số nguyên, `LinkedList` lưu trữ mọi kiểu dữ liệu.


14. Luồng (Thread) trong Java là gì?

A. Một loại biến đặc biệt.
B. Một đường dẫn thực thi độc lập trong một chương trình.
C. Một cơ chế quản lý bộ nhớ.
D. Một kiểu dữ liệu trừu tượng.


15. Annotation (chú thích) trong Java được sử dụng để làm gì?

A. Thay thế cho comment (chú thích dòng lệnh).
B. Cung cấp metadata (siêu dữ liệu) về code cho trình biên dịch hoặc JVM.
C. Tăng tốc độ thực thi chương trình.
D. Bảo vệ mã nguồn khỏi bị sao chép.


16. Serialization trong Java là quá trình gì?

A. Chuyển đổi mã nguồn Java sang bytecode.
B. Chuyển đổi một đối tượng thành một chuỗi byte để lưu trữ hoặc truyền tải.
C. Biên dịch mã Java thành mã máy.
D. Mã hóa dữ liệu để bảo mật.


17. Garbage Collection (GC) trong Java là cơ chế nào?

A. Cơ chế biên dịch mã nguồn.
B. Cơ chế tự động quản lý bộ nhớ, thu hồi bộ nhớ không còn được sử dụng.
C. Cơ chế quản lý phiên bản của code.
D. Cơ chế xử lý ngoại lệ.


18. JDBC (Java Database Connectivity) được sử dụng để làm gì?

A. Thiết kế giao diện người dùng.
B. Kết nối và tương tác với cơ sở dữ liệu từ ứng dụng Java.
C. Phát triển ứng dụng web.
D. Quản lý bộ nhớ.


19. Trong Java, `final` keyword được sử dụng để làm gì?

A. Khai báo một lớp trừu tượng.
B. Ngăn chặn kế thừa lớp, ghi đè phương thức, hoặc thay đổi giá trị biến sau khi gán.
C. Tạo ra một interface.
D. Định nghĩa một hằng số thời gian biên dịch.


20. Lambda expression trong Java 8 giúp đơn giản hóa việc gì?

A. Quản lý bộ nhớ.
B. Xử lý ngoại lệ.
C. Viết code cho các interface có một phương thức trừu tượng (Functional Interface).
D. Định nghĩa lớp và đối tượng.


21. Phương thức `toString()` được định nghĩa trong lớp `Object` dùng để làm gì?

A. So sánh hai đối tượng.
B. Trả về biểu diễn chuỗi của một đối tượng.
C. Tính toán mã băm của đối tượng.
D. Sao chép một đối tượng.


22. Trong Java, package (gói) được sử dụng để làm gì?

A. Tăng tốc độ biên dịch.
B. Nhóm các lớp và interface liên quan lại với nhau, tránh xung đột tên và quản lý code tốt hơn.
C. Tối ưu hóa bộ nhớ.
D. Bảo mật mã nguồn.


23. Ứng dụng của mô hình MVC (Model-View-Controller) trong phát triển ứng dụng Java Web là gì?

A. Tăng cường bảo mật cho ứng dụng.
B. Phân tách logic ứng dụng thành ba phần: dữ liệu (Model), giao diện (View) và điều khiển (Controller), giúp code dễ bảo trì và mở rộng.
C. Tối ưu hóa hiệu suất ứng dụng.
D. Đơn giản hóa quá trình biên dịch.


24. Reflection trong Java cho phép chương trình làm gì?

A. Kết nối với cơ sở dữ liệu.
B. Kiểm tra và sửa đổi thông tin về lớp, interface, phương thức, và trường (field) tại thời điểm runtime.
C. Tối ưu hóa mã bytecode.
D. Tạo ra giao diện người dùng đồ họa.


25. Generics trong Java giải quyết vấn đề chính nào?

A. Tăng tốc độ thực thi chương trình.
B. Cung cấp kiểu an toàn (type safety) tại thời điểm biên dịch cho các Collection.
C. Quản lý bộ nhớ hiệu quả hơn.
D. Đơn giản hóa việc xử lý ngoại lệ.


26. ClassLoader trong Java có vai trò gì?

A. Biên dịch mã nguồn Java.
B. Tải các lớp bytecode (.class files) vào JVM tại thời điểm runtime.
C. Kiểm tra lỗi cú pháp trong code.
D. Quản lý luồng (threads).


27. Tính bất biến (immutability) của lớp `String` trong Java có ý nghĩa gì?

A. Đối tượng String có thể thay đổi nội dung sau khi tạo.
B. Một khi đối tượng String được tạo, nội dung của nó không thể thay đổi.
C. Đối tượng String không thể được kế thừa.
D. Đối tượng String không thể được so sánh.


28. Trong lập trình Java, Dependency Injection (DI) là gì và lợi ích chính của nó?

A. Một kỹ thuật tối ưu hóa hiệu suất ứng dụng.
B. Một mẫu thiết kế giúp giảm sự phụ thuộc giữa các thành phần (components) của ứng dụng, tăng tính module hóa và khả năng kiểm thử.
C. Một phương pháp bảo mật ứng dụng web.
D. Một cơ chế quản lý bộ nhớ tự động.


29. Giả sử bạn có một ứng dụng Java cần xử lý đồng thời nhiều yêu cầu từ người dùng. Công nghệ nào của Java EE (Enterprise Edition) phù hợp nhất để xây dựng ứng dụng này?

A. Java Servlets và JSP (JavaServer Pages).
B. Java Swing.
C. Java AWT (Abstract Window Toolkit).
D. Java ME (Micro Edition).


30. Trong bối cảnh lập trình hướng đối tượng với Java, khi nào thì bạn nên sử dụng Composition (kết hợp) thay vì Inheritance (kế thừa)?

A. Khi bạn muốn tái sử dụng code một cách tối đa.
B. Khi mối quan hệ giữa hai lớp là `is-a` (là một), ví dụ `Dog is-a Animal`.
C. Khi mối quan hệ giữa hai lớp là `has-a` (có một), ví dụ `Car has-a Engine`, và bạn muốn linh hoạt thay đổi hành vi tại runtime.
D. Khi bạn muốn tạo ra một hệ thống phân cấp lớp phức tạp.


1 / 30

Category: Đề thi, bài tập trắc nghiệm online Lập trình java

Tags: Bộ đề 10

1. Trong Java, từ khóa nào được sử dụng để tạo một thể hiện (instance) của một lớp?

2 / 30

Category: Đề thi, bài tập trắc nghiệm online Lập trình java

Tags: Bộ đề 10

2. Phương thức `main()` trong Java có kiểu trả về là gì?

3 / 30

Category: Đề thi, bài tập trắc nghiệm online Lập trình java

Tags: Bộ đề 10

3. Đâu là kiểu dữ liệu nguyên thủy (primitive data type) trong Java?

4 / 30

Category: Đề thi, bài tập trắc nghiệm online Lập trình java

Tags: Bộ đề 10

4. 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 của một lớp khác?

5 / 30

Category: Đề thi, bài tập trắc nghiệm online Lập trình java

Tags: Bộ đề 10

5. Giao diện (interface) trong Java được sử dụng để làm gì?

6 / 30

Category: Đề thi, bài tập trắc nghiệm online Lập trình java

Tags: Bộ đề 10

6. Phương thức `equals()` trong Java được sử dụng để so sánh cái gì giữa hai đối tượng?

7 / 30

Category: Đề thi, bài tập trắc nghiệm online Lập trình java

Tags: Bộ đề 10

7. Ngoại lệ (Exception) trong Java là gì?

8 / 30

Category: Đề thi, bài tập trắc nghiệm online Lập trình java

Tags: Bộ đề 10

8. Vòng lặp `for-each` trong Java thường được sử dụng để làm gì?

9 / 30

Category: Đề thi, bài tập trắc nghiệm online Lập trình java

Tags: Bộ đề 10

9. Từ khóa `static` trong Java được sử dụng để khai báo thành viên như thế nào?

10 / 30

Category: Đề thi, bài tập trắc nghiệm online Lập trình java

Tags: Bộ đề 10

10. Trong lập trình hướng đối tượng, tính đóng gói (encapsulation) thể hiện điều gì?

11 / 30

Category: Đề thi, bài tập trắc nghiệm online Lập trình java

Tags: Bộ đề 10

11. Lớp `String` trong Java là kiểu dữ liệu gì?

12 / 30

Category: Đề thi, bài tập trắc nghiệm online Lập trình java

Tags: Bộ đề 10

12. Phương thức `super()` trong Java được sử dụng để làm gì trong lớp con?

13 / 30

Category: Đề thi, bài tập trắc nghiệm online Lập trình java

Tags: Bộ đề 10

13. Trong Java Collections Framework, `ArrayList` và `LinkedList` khác nhau cơ bản ở điểm nào?

14 / 30

Category: Đề thi, bài tập trắc nghiệm online Lập trình java

Tags: Bộ đề 10

14. Luồng (Thread) trong Java là gì?

15 / 30

Category: Đề thi, bài tập trắc nghiệm online Lập trình java

Tags: Bộ đề 10

15. Annotation (chú thích) trong Java được sử dụng để làm gì?

16 / 30

Category: Đề thi, bài tập trắc nghiệm online Lập trình java

Tags: Bộ đề 10

16. Serialization trong Java là quá trình gì?

17 / 30

Category: Đề thi, bài tập trắc nghiệm online Lập trình java

Tags: Bộ đề 10

17. Garbage Collection (GC) trong Java là cơ chế nào?

18 / 30

Category: Đề thi, bài tập trắc nghiệm online Lập trình java

Tags: Bộ đề 10

18. JDBC (Java Database Connectivity) được sử dụng để làm gì?

19 / 30

Category: Đề thi, bài tập trắc nghiệm online Lập trình java

Tags: Bộ đề 10

19. Trong Java, `final` keyword được sử dụng để làm gì?

20 / 30

Category: Đề thi, bài tập trắc nghiệm online Lập trình java

Tags: Bộ đề 10

20. Lambda expression trong Java 8 giúp đơn giản hóa việc gì?

21 / 30

Category: Đề thi, bài tập trắc nghiệm online Lập trình java

Tags: Bộ đề 10

21. Phương thức `toString()` được định nghĩa trong lớp `Object` dùng để làm gì?

22 / 30

Category: Đề thi, bài tập trắc nghiệm online Lập trình java

Tags: Bộ đề 10

22. Trong Java, package (gói) được sử dụng để làm gì?

23 / 30

Category: Đề thi, bài tập trắc nghiệm online Lập trình java

Tags: Bộ đề 10

23. Ứng dụng của mô hình MVC (Model-View-Controller) trong phát triển ứng dụng Java Web là gì?

24 / 30

Category: Đề thi, bài tập trắc nghiệm online Lập trình java

Tags: Bộ đề 10

24. Reflection trong Java cho phép chương trình làm gì?

25 / 30

Category: Đề thi, bài tập trắc nghiệm online Lập trình java

Tags: Bộ đề 10

25. Generics trong Java giải quyết vấn đề chính nào?

26 / 30

Category: Đề thi, bài tập trắc nghiệm online Lập trình java

Tags: Bộ đề 10

26. ClassLoader trong Java có vai trò gì?

27 / 30

Category: Đề thi, bài tập trắc nghiệm online Lập trình java

Tags: Bộ đề 10

27. Tính bất biến (immutability) của lớp `String` trong Java có ý nghĩa gì?

28 / 30

Category: Đề thi, bài tập trắc nghiệm online Lập trình java

Tags: Bộ đề 10

28. Trong lập trình Java, Dependency Injection (DI) là gì và lợi ích chính của nó?

29 / 30

Category: Đề thi, bài tập trắc nghiệm online Lập trình java

Tags: Bộ đề 10

29. Giả sử bạn có một ứng dụng Java cần xử lý đồng thời nhiều yêu cầu từ người dùng. Công nghệ nào của Java EE (Enterprise Edition) phù hợp nhất để xây dựng ứng dụng này?

30 / 30

Category: Đề thi, bài tập trắc nghiệm online Lập trình java

Tags: Bộ đề 10

30. Trong bối cảnh lập trình hướng đối tượng với Java, khi nào thì bạn nên sử dụng Composition (kết hợp) thay vì Inheritance (kế thừa)?