Tổng hợp câu hỏi trắc nghiệm cho fresher java Câu 1: Ai là người phát minh Java Programming? A. Guido van Rossum B. James Gosling C. Dennis Ritchie D. Bjarne Stroustrup Đáp án: B Giải thích: Ngôn ngữ lập trình Java được phát triển bởi James Gosling tại Sun Microsystems vào năm 1995. James Gosling được biết đến là bố của Java. Câu 2: Câu nào đúng về Java? A. Java là ngôn ngữ lập trình phụ thuộc vào chuỗi B. Java là ngôn ngữ lập trình phụ thuộc vào mã nguồn C. Java là ngôn ngữ lập trình phụ thuộc vào nền tảng D. Java là ngôn ngữ lập trình độc lập với nền tảng Đáp án: D Giải thích: Java được gọi là Ngôn ngữ Độc lập với Nền tảng vì nó hoạt động chủ yếu dựa trên nguyên tắc biên dịch một lần, chạy ở mọi nơi. trắc nghiệm java, trắc nghiệm test java, câu hỏi thi trắc nghiệm java, trắc nghiệm java fpt, trắc nghiệm java hướng đối tượng, câu hỏi thi trắc nghiệm java
Trang 1CÂU HỎI TRẮC NGHIỆM CHO FRESHER JAVA
Câu 1: Ai là người phát minh Java Programming?
A Guido van Rossum
B James Gosling
C Dennis Ritchie
D Bjarne Stroustrup
Đáp án: B
Giải thích: Ngôn ngữ lập trình Java được phát triển bởi James Gosling tại Sun
Microsystems vào năm 1995 James Gosling được biết đến là "bố của Java."
Câu 2: Câu nào đúng về Java?
A Java là ngôn ngữ lập trình phụ thuộc vào chuỗi
B Java là ngôn ngữ lập trình phụ thuộc vào mã nguồn
C Java là ngôn ngữ lập trình phụ thuộc vào nền tảng
D Java là ngôn ngữ lập trình độc lập với nền tảng
Trang 2Giải thích: JDK là một thành phần cốt lõi của Môi trường Java và cung cấp tất cả các công cụ, tệp thực thi và nhị phân cần thiết để biên dịch, gỡ lỗi và thực thi một Chương trình Java.
Câu 4: Trong số các tính năng sau, cái nào không phải là một tính năng của Java?
A Hướng đối tượng
Câu 5: Cái nào không thể được sử dụng làm tên biến trong Java?
A Bộ nhận dạng và từ khóa (identifier & keyword)
B Bộ nhận dạng (identifier)
C Từ khóa (keyword)
D Không có câu trả lời nào đúng
Đáp án: C
Giải thích: Từ khóa là các từ đặc biệt được dành riêng và không thể sử dụng làm tên biến
do chúng có ý nghĩa đặc biệt trong ngôn ngữ
Câu 6: Phần mở rộng của các tệp mã nguồn Java là gì?
Trang 3Giải thích: Các tệp mã nguồn Java có phần mở rộng là java.
Câu 7: Đoạn mã Java sau sẽ cho ra kết quả gì?
Giải thích: JAVA_HOME được sử dụng để lưu trữ đường dẫn đến cài đặt Java
Câu 9: Chương trình Java sau sẽ cho ra kết quả gì?
class output {
Trang 4public static void main(String args[])
Câu 10: Trong số các khái niệm OOPS sau đây, khái niệm nào không phải là một
Trang 5Giải thích: Có 4 khái niệm OOPS trong Java Inheritance, Encapsulation, Polymorphism
và Abstraction
Câu 11: Sử dụng của từ khóa "this" trong Java không bao gồm việc:
A Tham chiếu đến biến instance khi một biến local có cùng tên
B Truyền chính nó vào phương thức của cùng một lớp
C Truyền chính nó vào một phương thức khác
D Gọi một constructor khác trong chuỗi constructor
Đáp án: B
Giải thích: Từ khóa "this" trong Java được sử dụng để phân biệt giữa biến local và biến được truyền vào phương thức Nó không được sử dụng để truyền chính nó vào phương thức của cùng một lớp
Câu 12: Kết quả của chương trình Java sau đây là gì?
Trang 6A b không thể chứa giá trị 50
B b không thể chứa giá trị 100, bị giới hạn bởi phạm vi của nó
C Không có lỗi trong mã này
D Toán tử * đã chuyển b * 50 thành int, không thể chuyển đổi thành byte mà không cần
Trang 7Giải thích: Không có giải thích được cung cấp.
Câu 16: Kết quả của chương trình Java sau đây là gì?
Trang 9Câu 17: Trong Java, "Truncation" là gì?
A Gán giá trị dấu chấm động cho kiểu dữ liệu dấu chấm động
B Gán giá trị dấu chấm động cho kiểu dữ liệu nguyên
C Gán giá trị nguyên cho kiểu dữ liệu dấu chấm động
D Gán giá trị nguyên cho kiểu dữ liệu dấu chấm động
Trang 10A Đoạn mã biên dịch và chạy nhưng không in ra bất cứ điều gì
B Đoạn mã biên dịch, chạy và in ra 0
C Đoạn mã biên dịch, chạy và in ra 1
D Đoạn mã không biên dịch
Trang 11Giải thích: Các tệp Java đã được biên dịch có phần mở rộng là class.
Câu 21: Khi Java hết bộ nhớ, ngoại lệ nào được ném?
Giải thích: Khi Java gặp sự cố với bộ nhớ, nó sẽ ném ngoại lệ OutOfMemoryError
Câu 22: Kết quả của chương trình Java sau đây là gì?
class String_demo
{
public static void main(String args[])
{
char chars[] = {'a', 'b', 'c'};
String s = new String(chars);
Trang 12Giải thích: Break và continue là các lệnh nhảy, và for là lệnh lặp.
Câu 24: Kết quả của chương trình Java sau đây là gì?
class recursion
{
Trang 13int func (int n)
Trang 14Giải thích: Phương thức startsWith() là phân biệt chữ hoa chữ thường, vì vậy "hello" và
"Hello" được xem xét khác nhau, do đó giá trị của var là false
Câu 26: Từ khóa nào sau đây để định nghĩa interfaces trong Java?
Trang 15Giải thích: Từ khóa "interface" được sử dụng để định nghĩa giao diện trong Java.
Câu 27: Chương trình Java sau đây sẽ xuất ra kết quả gì?
Trang 16Câu 28: Chương trình Java sau đây sẽ xuất ra kết quả gì?
Giải thích: Phương thức i.byteValue() trả về giá trị của wrapper i dưới dạng giá trị byte
Vì giá trị của i là 257, vượt qua phạm vi của byte là 256, nên giá trị 1 được trả về và lưu vào biến x
Trang 18B Abstract class
C Object class
D String
Đáp án: C
Giải thích: Lớp Object là superclass của mọi lớp trong Java
Câu 31: Chương trình Java sau đây sẽ xuất ra kết quả gì?
Trang 22B [A, B, C]
C [A, B, C, D]
D [A, D, B, C]
Đáp án: D
Giải thích: obj là một đối tượng của lớp ArrayLists nên nó là một mảng động có thể tăng
và giảm kích thước của nó obj.add("X") thêm phần tử "X" vào mảng và obj.add(1, "X") thêm phần tử "X" vào vị trí chỉ số 1 trong danh sách, do đó obj.add(1, "D") lưu trữ "D" tại vị trí chỉ số 1 của obj và dời giá trị đã được lưu trữ tại vị trí đó lên 1
Giải thích: Không có giải thích
Câu 37: Đoạn mã Java sau đây sẽ cho kết quả là gì?
import java.util.*;
class Collection_iterators {
Trang 23public static void main(String args[]) {
LinkedList list = new LinkedList();
Câu 38: Câu nào dưới đây là không đúng về Thread?
A Phương thức start() được sử dụng để bắt đầu thực thi của thread
B Phương thức run() được sử dụng để bắt đầu thực thi của một thread trước phương thứcstart() trong trường hợp đặc biệt
C Một thread có thể được tạo ra bằng cách triển khai giao diện Runnable
Trang 24D Một thread có thể được tạo ra bằng cách một lớp mở rộng lớp Thread.
Đáp án: B
Giải thích: Phương thức run() được sử dụng để định nghĩa mã nguồn của thread mới, nó chứa mã nguồn cần được thực thi Phương thức start() được sử dụng để bắt đầu thực thi của thread, tức là thực thi của run() run() không bao giờ được sử dụng để bắt đầu thực thicủa thread
Câu 39: Keyword nào dưới đây được sử dụng để kiểm tra khối mã lệnh có ngoại lệ không?
Giải thích: try được sử dụng cho khối mã cần được kiểm tra có ngoại lệ hay không
Câu 40: Đoạn mã Java sau đây sẽ cho kết quả là gì?
class newthread extends Thread {
Thread t1, t2;
newthread() {
t1 = new Thread(this, "Thread_1");
t2 = new Thread(this, "Thread_2");
Trang 25Câu 41: Trong Java, từ khóa nào dưới đây không phải là một bộ điều khiển truy cập?
Trang 26Câu 42: Đoạn mã Java sau đây sẽ cho kết quả là gì?
Trang 27C 0 đến 65535
D 0 đến 32767
Đáp án: C
Giải thích: Char chiếm 16 bit trong bộ nhớ, vì vậy nó hỗ trợ 2^16 tức là từ 0 đến 65535
Câu 44: Lớp nào cung cấp triển khai máy chủ độc lập hệ thống?
Trang 28public static void main(String args[]) {
overload obj = new overload();