Bộ đề Trắc nghiệm Lập trình Java – Phần 2

Năm thi: 2024
Môn học: Lập trình Java
Trường: Tổng hợp
Người ra đề: Tổng hợp
Hình thức thi: Trắc nghiệm
Loại đề thi: Thi qua môn
Độ khó: Trung bình
Thời gian thi: 60 phút
Số lượng câu hỏi: 50 câu
Đối tượng thi: Sinh viên
Năm thi: 2024
Môn học: Lập trình Java
Trường: Tổng hợp
Người ra đề: Tổng hợp
Hình thức thi: Trắc nghiệm
Loại đề thi: Thi qua môn
Độ khó: Trung bình
Thời gian thi: 60 phút
Số lượng câu hỏi: 50 câu
Đối tượng thi: Sinh viên

Mục Lục

Trắc nghiệm Lập trình Java là một phần thiết yếu trong chương trình đào tạo của các ngành Khoa học Máy tính, Kỹ thuật Phần mềm, và Công nghệ Thông tin tại nhiều trường đại học, chẳng hạn như Đại học Bách Khoa Hà Nội và Đại học Khoa học Tự nhiên. Trắc Nghiệm Lập trình Java cung cấp cho sinh viên kiến thức cơ bản và nâng cao về ngôn ngữ lập trình Java, bao gồm cú pháp, cấu trúc dữ liệu, các thư viện, và các kỹ thuật lập trình đối tượng.

Bộ đề Trắc nghiệm Lập trình Java – Phần 2

Câu 1:
Thứ tự các từ khóa public và static khi khai báo như thế nào?
A. public đứng trước static
B. static đứng trước public
C. Thứ tự bất kỳ nhưng thông thường public đứng trước
D. Tất cả đều sai.

Câu 2:
Câu lệnh khai báo chuẩn cho cách main như thế nào?
A. public static void main(String[] args) {}
B. public static int main(String args) {}
C. public static main(String[] args) {}
D. public static final void main(String[] args) {}

Câu 3:
Câu nào sau đây là sai?
A. /** chú thích /
B. /
chú thích /
C. / chú thích

D. // chú thích

Câu 4:
Khi biên dịch gặp lỗi Exception in thread main java.lang.NoClassDefFoundError: myprogram. Lỗi này có nghĩa gì?
A. Đường dẫn chương trình sai.
B. Không có hàm main
C. Không khai báo class
D. Không có từ khóa public tại mở đầu khai báo class

Câu 5:
Đối tượng trong phần mềm là gì?
A. Là một bó phần mềm gồm các hành vi và trạng thái có liên quan với nhau.
B. Là vật thể xác định của thế giới thực.
C. Là vật thể gồm hành vi và trạng thái.
D. Là các đối tượng được biểu diễn trong phần mềm gồm có 2 thuộc tính trường dữ liệu và các cách xử lý dữ liệu.

Câu 6:
Khai báo lớp nào dưới đây là đúng?
A. public class default {}
B. protected inner class engine {}
C. final class outer {}
D. Tất cả đều sai.

Câu 7:
Cách đặt tên nào sau đây là sai?
A. 2word
B. *word
C. main
D. Tất cả đều sai.

Câu 8:
Một chương trình gồm 2 class sẽ có bao nhiêu cách main?
A. 1
B. 2
C. 3
D. 4

Câu 9:
Một lớp trong Java có thể có bao nhiêu lớp cha?
A. 1
B. 2
C. 3
D. 4

Câu 10:
Một lớp trong Java có bao nhiêu lớp con?
A. 2
B. 3
C. 4
D. Vô số

Câu 11:
Để khai báo lớp Xedap1 kế thừa lớp Xedap phải làm như thế nào?
A. class Xedap1 extend Xedap {}
B. public classs Xedap1 extend Xedap {}
C. class Xedap1 extends Xedap {}
D. Tất cả đều sai.

Câu 12:
Chọn câu trả lời đúng nhất. Interface là gì?
A. Là lớp chứa các cách rỗng có liên quan với nhau.
B. Là một kiểu tham chiếu, tương tự như class, chỉ có thể chứa hằng giá trị, khai báo cách và kiểu lồng.
C. Là một cách thực hiện của lớp khác.
D. Là lớp nối giữa lớp cơ sở và lớp cha

Câu 13:
Để sử dụng giao diện Xedap cho lớp Xedap1, ta làm thế nào?
A. class Xedap1 implement Xedap {}
B. public class Xedap1 implement Xedap {}
C. class Xedap1 implements Xedap {}
D. public class Xedap1 extends Xedap {}

Câu 14:
Có bao nhiêu loại biến trong Java?
A. 1
B. 2
C. 3
D. 4

Câu 15:
Trường dữ liệu là các biến dạng nào sau đây?
A. Biến thay mặt và Tham số
B. Biến thay mặt và biến lớp
C. Biến thay mặt và biến cục bộ
D. Biến lớp và Tham số

Câu 16:
Biến dữ liệu là các biến dạng nào sau đây?
A. Biến lớp và Tham số
B. Biến cục bộ và Tham số
C. Biến cục bộ và biến lớp
D. Các đáp án đều sai.

Câu 17:
Biến f nào sau đây là biến đại diện?
A. float f;
B. public static f;
C. double CA(int f)
D. Không có giá trị đúng

Câu 18:
Khai báo nào sau đây là khai báo biến lớp?
A. final double d;
B. private static id;
C. volatile int sleepTime
D. Không có đáp án đúng

Câu 19:
Cách đặt tên nào sau đây là không chính xác?
A. final
B. dem
C. _final
D. $final

Câu 20:
Có bao nhiêu kiểu dữ liệu cơ sở trong Java?
A. 7
B. 8
C. 9
D. 5

Câu 21:
Có bao nhiêu kiểu số nguyên trong Java?
A. 1
B. 2
C. 3
D. 4

Câu 22:
Có bao nhiêu kiểu dữ liệu ký tự cơ sở trong Java?
A. 1
B. 2
C. 3
D. 4

Câu 23:
Khái niệm cách start()?
A. Mọi cách thực hiện tác vụ sau khi khởi tạo phải chèn lên cách start. start() bắt đầu việc thực thi của applet.
B. Là cách bắt đầu của applet và chạy song song với applet.
C. cách khởi tạo của applet và chạy song song với applet.
D. Tất cả đều sai.

Câu 24:
Khối lệnh sau có kết quả bao nhiêu?
String greeting = “Hello”;
int k = greeting.length();
System.out.print(k);
B. 5
A. 4
C. 6
D. 7

Câu 25:
Đoạn mã sau có lỗi biên dịch gì?
public class Person {
private String name;
protected int age;
public static void main(String[] args) {
Person p = new Person();
p.name = “Tom”;
System.out.println(p.name);
}
}
A. Không có lỗi biên dịch
B. name has private access.
C. age has protected access.
D. name has public access.

Câu 26:
Đoạn mã sau có lỗi biên dịch gì?
class Person {
protected String name;
public int age;
};
public class Main {
public static void main(String[] args) {
Person p = new Person();
p.name = “Tom”;
}
}
A. Không có lỗi biên dịch.
B. name has protected access.
C. age has protected access.
D. name has public access.

Câu 27:
Trong các khai báo sau đâu là khai báo không hợp lệ?
A. int a1[][] = new int[][3];
B. int a2[][] = new int[2][3];
C. int a3[][] = new int[2][];
D. int a4[][] = {{}, {}, {}};

Câu 28:
Chương trình sau in ra màn hình xâu nào?
public class Main {
public static void main(String[] args) {
String names[] = {
“John”,
“Anna”,
“Peter”,
“Victor”,
“David”
};
System.out.println(names[2]);
}
}
A. Có lỗi biên dịch: use new keyword to create object
B. Peter
C. Anna
D. Victor

Câu 29:
Trong đoạn mã trên x nhận giá trị bao nhiêu?
String s = “cabcab”;
StringTokenizer sten = new StringTokenizer(s, “ab”);
int x = sten.countTokens();
System.out.println(x);
D. 3
A. 0
B. 1
C. 2

Câu 30:
Đoạn mã sau có lỗi biên dịch KHÔNG? Nếu có là lỗi nào sau?
class Student {}
public class Man extends Student {
public boolean isMan() {
return true;
}
}
A. Không có lỗi biên dịch
B. Có lỗi biên dịch

Student is empty.
C. Có lỗi biên dịch

Man has no constructor.
D. Có lỗi biên dịch

Student is empty, class Man has no constructor.

Câu 31:
Đoạn mã sau có lỗi biên dịch nào?
public class Main {
public static void main(String[] args) {
int x = 5;
int y = 0;
try {
int z = x / y;
} catch (ArithmeticException e) {
System.out.println(“Error: Division by zero”);
}
}
}
A. Không có lỗi biên dịch.
B. Lỗi biên dịch: Cannot divide by zero.
C. Lỗi biên dịch: Cannot divide by zero and ArithmeticException.
D. Lỗi biên dịch: Cannot divide by zero and error.

Câu 32:
Khai báo biến nào là khai báo biến khởi tạo?
A. int a = 0;
B. int a;
C. int a = {0};
D. int a = new int[5];

Câu 33:
Đoạn mã sau in ra kết quả gì?
int x = 10;
if (x < 5) {
System.out.println(“Less than 5”);
} else {
System.out.println(“Greater or equal to 5”);
}
A. Greater or equal to 5
B. Less than 5
C. Error
D. Không có đáp án đúng.

Câu 34:
Trong đoạn mã sau, chuỗi nào là chuỗi chính?
String s = new String(“Hello”);
A. Hello
B. new String(“Hello”)
C. s
D. Không có đáp án đúng.

Câu 35:
Có bao nhiêu phương thức main trong đoạn mã sau?
public class Main {
public static void main(String[] args) {
System.out.println(“Hello”);
}
}
A. 1
B. 2
C. 3
D. Không có đáp án đúng.

Câu 36:
Các từ khóa sau thuộc loại nào?
A. Từ khóa
B. Biến
C. Lớp
D. Phương thức

Câu 37:
Khi gọi một phương thức từ một đối tượng, phương thức được gọi bằng cách nào?
A. X.getValue()
B. getValue(X)
C. X.getValue(){}
D. getValue()

Câu 38:
Trong đoạn mã sau, x được in ra giá trị nào?
public class Main {
public static void main(String[] args) {
int x = 5;
int y = x++;
System.out.println(y);
}
}
A. 6
B. 5
C. 4
D. 7

Câu 39:
Khả năng tiếp cận của lớp có thể là?
A. Public
B. Private
C. Protected
D. Không có đáp án đúng

Câu 40:
Khi gọi phương thức từ một lớp cha, phương thức có thể gọi từ lớp con hay không?
A. Có thể
B. Không thể
C. Tùy thuộc vào mức truy cập
D. Không có đáp án đúng

Câu 41:
Để làm cho lớp có thể kế thừa từ một lớp khác, lớp cha phải được khai báo như thế nào?
A. public
B. protected
C. private
D. Không cần khai báo

Câu 42:
Trong câu lệnh try-catch, nếu không có khối catch thì khối finally có được thực hiện không?
A. Có
B. Không
C. Tùy thuộc vào lỗi
D. Tất cả đều sai

Câu 43:
Lệnh nào không phải là lệnh kiểm tra lỗi?
A. throw
B. throws
C. break
D. try

Câu 44:
Khối finally được thực thi trong trường hợp nào?
A. Khi không có lỗi xảy ra.
B. Khi có lỗi xảy ra.
C. Khi có lỗi xảy ra hoặc không xảy ra.
D. Tất cả đều sai.

Câu 45:
Trong đoạn mã dưới đây, điều kiện đúng là gì?
int[] arr = {1, 2, 3};
A. arr[0] == 1
B. arr[1] == 2
C. arr[2] == 4
D. arr[1] == 3

Câu 46:
Có bao nhiêu cách để khởi tạo một mảng trong Java?
A. 1
B. 2
C. 3
D. 4

Câu 47:
Khi khai báo một lớp trong Java, từ khóa nào phải được dùng?
A. class
B. object
C. new
D. instance

Câu 48:
Có bao nhiêu kiểu dữ liệu cơ bản trong Java?
A. 6
B. 7
C. 8
D. 9

Câu 49:
Lệnh nào dùng để kết thúc vòng lặp sớm nhất?
A. break
B. continue
C. return
D. exit

Câu 50:
Khi nào khối finally không được thực thi?
A. Khi không có lỗi xảy ra.
B. Khi chương trình thoát khỏi VM
C. Khi có lỗi xảy ra.
D. Tất cả đều sai.

Bài Tiếp Theo
×
Lấy mã và nhập vào ô dưới đây

Bạn ơi!! Ủng hộ tụi mình bằng cách làm nhiệm vụ nha <3
Chỉ tốn 30s thôi là đã có link Drive rồi nè.
Duy trì Website/Hosting hàng tháng cũng không dễ dàng T_T

LƯU Ý: Không sử dụng VPN hoặc 1.1.1.1 khi vượt link

Bước 1: Mở tab mới, truy cập Google.com

Bước 2: Tìm kiếm từ khóa: Từ khóa

Bước 3: Trong kết quả tìm kiếm Google, hãy tìm website giống dưới hình:

(Nếu trang 1 không có hãy tìm ở trang 2, 3, 4... nhé )

Bước 4: Cuộn xuống cuối bài viết rồi bấm vào nút LẤY MÃ và chờ 1 lát để lấy mã: (Giống hình dưới)