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

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

Đề 4 - 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. new
C. instanceof
D. object


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

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


3. Đâu là phát biểu **KHÔNG ĐÚNG** về tính chất `đóng gói` (encapsulation) trong lập trình hướng đối tượng Java?

A. Đóng gói giúp che giấu thông tin và bảo vệ dữ liệu của đối tượng.
B. Đóng gói cho phép kiểm soát việc truy cập và sửa đổi dữ liệu của đối tượng thông qua các phương thức.
C. Đóng gói làm tăng tính phức tạp của việc sử dụng đối tượng từ bên ngoài.
D. Đóng gói là một trong bốn trụ cột chính của lập trình hướng đối tượng.


4. Kiểu dữ liệu nào sau đây **KHÔNG** phải là kiểu dữ liệu nguyên thủy (primitive type) trong Java?

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


5. Trong Java, từ khóa nào được sử dụng để khai báo một biến hằng số (constant)?

A. static
B. const
C. final
D. immutable


6. Phương thức `equals()` và toán tử `==` trong Java khác nhau như thế nào khi so sánh các đối tượng?

A. `equals()` so sánh tham chiếu đối tượng, `==` so sánh giá trị thuộc tính.
B. `equals()` so sánh giá trị thuộc tính, `==` so sánh tham chiếu đối tượng.
C. Cả `equals()` và `==` đều so sánh tham chiếu đối tượng.
D. Cả `equals()` và `==` đều so sánh giá trị thuộc tính.


7. Lớp `Scanner` trong Java thường được sử dụng để làm gì?

A. Tạo giao diện đồ họa người dùng.
B. Đọc dữ liệu đầu vào từ người dùng.
C. Ghi dữ liệu ra tập tin.
D. Quản lý bộ nhớ.


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

A. Khả năng một lớp kế thừa từ nhiều lớp khác.
B. Khả năng một đối tượng có nhiều thuộc tính.
C. Khả năng một đối tượng thuộc nhiều lớp khác nhau.
D. Khả năng một đối tượng thể hiện các hành vi khác nhau trong các tình huống khác nhau.


9. Mục đích chính của việc sử dụng giao diện (interface) trong Java là gì?

A. Tăng hiệu suất thực thi chương trình.
B. Hiện thực hóa tính đa kế thừa.
C. Định nghĩa một hợp đồng mà các lớp phải tuân theo.
D. Thay thế cho lớp trừu tượng.


10. Ngoại lệ (exception) `NullPointerException` xảy ra khi nào?

A. Truy cập vào một phần tử mảng vượt quá kích thước mảng.
B. Thực hiện phép chia cho 0.
C. Cố gắng truy cập một biến đối tượng có giá trị `null`.
D. Ép kiểu dữ liệu không hợp lệ.


11. Trong Java Collections Framework, `ArrayList` và `LinkedList` khác nhau chủ yếu ở điểm nào?

A. `ArrayList` nhanh hơn trong việc thêm/xóa phần tử ở đầu danh sách, `LinkedList` nhanh hơn trong việc truy cập ngẫu nhiên.
B. `ArrayList` dựa trên mảng động, `LinkedList` dựa trên danh sách liên kết đôi.
C. `ArrayList` hỗ trợ đa luồng tốt hơn `LinkedList`.
D. `ArrayList` chỉ lưu trữ được kiểu dữ liệu nguyên thủy, `LinkedList` lưu trữ được mọi kiểu dữ liệu.


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

A. So sánh hai đối tượng.
B. Chuyển đổi một đối tượng thành chuỗi ký tự.
C. Tính toán mã băm của đối tượng.
D. Giải phóng bộ nhớ của đối tượng.


13. Vòng lặp `for-each` (enhanced for loop) trong Java chủ yếu được sử dụng để làm gì?

A. Lặp qua các phần tử của một mảng hoặc collection.
B. Thực hiện lặp vô hạn.
C. Lặp qua các số nguyên trong một khoảng xác định.
D. Thay thế cho vòng lặp `while`.


14. Trong Java, `garbage collection` (thu gom rác) là gì?

A. Quá trình biên dịch mã nguồn Java thành bytecode.
B. Cơ chế tự động quản lý bộ nhớ, giải phóng bộ nhớ không còn được sử dụng.
C. Phương pháp tối ưu hóa hiệu suất chương trình Java.
D. Thư viện hỗ trợ xử lý lỗi và ngoại lệ.


15. Đâu là lợi ích chính của việc sử dụng lập trình đa luồng (multithreading) trong Java?

A. Giảm mức sử dụng bộ nhớ.
B. Tăng độ phức tạp của mã nguồn.
C. Cải thiện hiệu suất và khả năng phản hồi của ứng dụng.
D. Đơn giản hóa việc quản lý tài nguyên hệ thống.


16. Annotation `@Override` trong Java được sử dụng để làm gì?

A. Khai báo một biến static.
B. Chỉ định rằng một phương thức ghi đè một phương thức từ lớp cha.
C. Tạo một đối tượng singleton.
D. Đánh dấu một phương thức là trừu tượng (abstract).


17. Trong Java, `constructor` (hàm tạo) có vai trò gì?

A. Xác định kiểu dữ liệu của một lớp.
B. Khởi tạo các thuộc tính của đối tượng khi đối tượng được tạo ra.
C. Thực hiện các phép toán số học.
D. Giải phóng bộ nhớ khi đối tượng không còn sử dụng.


18. Phương thức `parseInt()` của lớp `Integer` trong Java dùng để làm gì?

A. Chuyển đổi một số nguyên thành chuỗi.
B. Chuyển đổi một chuỗi biểu diễn số nguyên thành kiểu `int`.
C. Kiểm tra xem một chuỗi có phải là số nguyên hay không.
D. Định dạng một số nguyên theo một khuôn mẫu nhất định.


19. Trong Java, từ khóa `static` có ý nghĩa gì khi được sử dụng cho một biến thành viên của lớp?

A. Biến chỉ có thể truy cập từ bên trong lớp chứa nó.
B. Biến được tạo ra mỗi khi một đối tượng của lớp được khởi tạo.
C. Biến thuộc về lớp chứ không phải đối tượng cụ thể của lớp.
D. Biến không thể thay đổi giá trị sau khi khởi tạo.


20. Giả sử bạn có một lớp `Dog` kế thừa từ lớp `Animal`. Để gọi constructor của lớp `Animal` từ constructor của lớp `Dog`, bạn sử dụng từ khóa nào?

A. this()
B. super()
C. base()
D. parent()


21. Trong Java, `boxing` và `unboxing` đề cập đến quá trình chuyển đổi giữa kiểu dữ liệu nào?

A. Giữa kiểu dữ liệu nguyên thủy và kiểu tham chiếu.
B. Giữa các kiểu dữ liệu nguyên thủy khác nhau.
C. Giữa các kiểu tham chiếu khác nhau.
D. Giữa kiểu dữ liệu số và kiểu dữ liệu chuỗi.


22. Phương thức `finalize()` trong Java được sử dụng để làm gì (nhưng **KHÔNG ĐƯỢC KHUYẾN KHÍCH** sử dụng)?

A. Khởi tạo đối tượng.
B. Giải phóng tài nguyên trước khi đối tượng bị thu gom bởi garbage collector.
C. So sánh hai đối tượng.
D. In thông tin đối tượng ra console.


23. Iterator trong Java Collections Framework được sử dụng để làm gì?

A. Sắp xếp các phần tử trong collection.
B. Thêm phần tử vào collection.
C. Duyệt qua các phần tử của collection một cách tuần tự.
D. Tìm kiếm phần tử trong collection.


24. Trong Java, `lambda expression` (biểu thức lambda) là gì?

A. Một kiểu dữ liệu mới được thêm vào Java.
B. Một cách viết ngắn gọn cho anonymous inner class (lớp nội danh vô danh) chỉ có một phương thức trừu tượng.
C. Một cơ chế xử lý ngoại lệ mới.
D. Một cách tạo đối tượng đa luồng.


25. Phương thức `sleep()` của lớp `Thread` được sử dụng để làm gì?

A. Kết thúc một luồng (thread).
B. Tạm dừng thực thi luồng hiện tại trong một khoảng thời gian nhất định.
C. Khởi động một luồng mới.
D. Đồng bộ hóa các luồng.


26. Trong Java, Serialization là quá trình gì?

A. Chuyển đổi mã nguồn Java thành bytecode.
B. Chuyển đổi trạng thái của một đối tượng thành một chuỗi byte để lưu trữ hoặc truyền tải.
C. Quá trình biên dịch và liên kết các lớp Java.
D. Tối ưu hóa hiệu suất của chương trình Java.


27. Javadoc là gì?

A. Một trình biên dịch Java.
B. Một công cụ để tạo tài liệu API tự động từ mã nguồn Java.
C. Một thư viện hỗ trợ kiểm thử đơn vị trong Java.
D. Một môi trường phát triển tích hợp (IDE) cho Java.


28. Trong mô hình MVC (Model-View-Controller), Controller có vai trò gì?

A. Hiển thị dữ liệu cho người dùng.
B. Quản lý dữ liệu và logic nghiệp vụ.
C. Xử lý tương tác của người dùng và cập nhật Model và View.
D. Lưu trữ dữ liệu vào cơ sở dữ liệu.


29. Giả sử bạn có một `HashSet` chứa các đối tượng tùy chỉnh. Điều kiện tiên quyết để `HashSet` hoạt động đúng cách với các đối tượng này là gì?

A. Các đối tượng phải implement interface `Comparable`.
B. Các đối tượng phải có phương thức `clone()` được ghi đè.
C. Các đối tượng phải ghi đè phương thức `equals()` và `hashCode()` một cách nhất quán.
D. Các đối tượng phải kế thừa từ lớp `Object`.


30. Ứng dụng nào sau đây là một ví dụ về việc sử dụng Design Pattern `Singleton` trong lập trình Java?

A. Một lớp tiện ích `Math` chứa các phương thức toán học static.
B. Một lớp quản lý cấu hình ứng dụng, đảm bảo chỉ có một thể hiện duy nhất trong suốt quá trình chạy.
C. Một lớp `Factory` để tạo ra các đối tượng khác nhau dựa trên tham số đầu vào.
D. Một lớp `Observer` để thông báo sự kiện cho nhiều đối tượng quan sát.


1 / 30

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

Tags: Bộ đề 4

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ộ đề 4

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ộ đề 4

3. Đâu là phát biểu **KHÔNG ĐÚNG** về tính chất 'đóng gói' (encapsulation) trong lập trình hướng đối tượng Java?

4 / 30

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

Tags: Bộ đề 4

4. Kiểu dữ liệu nào sau đây **KHÔNG** phải là kiểu dữ liệu nguyên thủy (primitive type) trong Java?

5 / 30

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

Tags: Bộ đề 4

5. Trong Java, từ khóa nào được sử dụng để khai báo một biến hằng số (constant)?

6 / 30

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

Tags: Bộ đề 4

6. Phương thức `equals()` và toán tử `==` trong Java khác nhau như thế nào khi so sánh các đối tượng?

7 / 30

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

Tags: Bộ đề 4

7. Lớp `Scanner` trong Java thường được sử dụng để làm gì?

8 / 30

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

Tags: Bộ đề 4

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

9 / 30

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

Tags: Bộ đề 4

9. Mục đích chính của việc sử dụng giao diện (interface) trong Java là gì?

10 / 30

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

Tags: Bộ đề 4

10. Ngoại lệ (exception) `NullPointerException` xảy ra khi nào?

11 / 30

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

Tags: Bộ đề 4

11. Trong Java Collections Framework, `ArrayList` và `LinkedList` khác nhau chủ yếu ở điểm nào?

12 / 30

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

Tags: Bộ đề 4

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

13 / 30

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

Tags: Bộ đề 4

13. Vòng lặp `for-each` (enhanced for loop) trong Java chủ yếu được sử dụng để làm gì?

14 / 30

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

Tags: Bộ đề 4

14. Trong Java, 'garbage collection' (thu gom rác) là gì?

15 / 30

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

Tags: Bộ đề 4

15. Đâu là lợi ích chính của việc sử dụng lập trình đa luồng (multithreading) trong Java?

16 / 30

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

Tags: Bộ đề 4

16. Annotation `@Override` trong Java được sử dụng để làm gì?

17 / 30

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

Tags: Bộ đề 4

17. Trong Java, 'constructor' (hàm tạo) có vai trò gì?

18 / 30

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

Tags: Bộ đề 4

18. Phương thức `parseInt()` của lớp `Integer` trong Java 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ộ đề 4

19. Trong Java, từ khóa `static` có ý nghĩa gì khi được sử dụng cho một biến thành viên của lớp?

20 / 30

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

Tags: Bộ đề 4

20. Giả sử bạn có một lớp `Dog` kế thừa từ lớp `Animal`. Để gọi constructor của lớp `Animal` từ constructor của lớp `Dog`, bạn sử dụng từ khóa nào?

21 / 30

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

Tags: Bộ đề 4

21. Trong Java, 'boxing' và 'unboxing' đề cập đến quá trình chuyển đổi giữa kiểu dữ liệu nào?

22 / 30

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

Tags: Bộ đề 4

22. Phương thức `finalize()` trong Java được sử dụng để làm gì (nhưng **KHÔNG ĐƯỢC KHUYẾN KHÍCH** sử dụng)?

23 / 30

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

Tags: Bộ đề 4

23. Iterator trong Java Collections Framework được sử dụng để làm gì?

24 / 30

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

Tags: Bộ đề 4

24. Trong Java, 'lambda expression' (biểu thức lambda) là gì?

25 / 30

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

Tags: Bộ đề 4

25. Phương thức `sleep()` của lớp `Thread` được sử dụng để làm gì?

26 / 30

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

Tags: Bộ đề 4

26. Trong Java, Serialization là quá trình gì?

27 / 30

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

Tags: Bộ đề 4

27. Javadoc là gì?

28 / 30

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

Tags: Bộ đề 4

28. Trong mô hình MVC (Model-View-Controller), Controller có vai trò gì?

29 / 30

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

Tags: Bộ đề 4

29. Giả sử bạn có một `HashSet` chứa các đối tượng tùy chỉnh. Điều kiện tiên quyết để `HashSet` hoạt động đúng cách với các đối tượng này là gì?

30 / 30

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

Tags: Bộ đề 4

30. Ứng dụng nào sau đây là một ví dụ về việc sử dụng Design Pattern 'Singleton' trong lập trình Java?