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

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 1

Câu 1: Đâu là câu SAI về ngôn ngữ Java?
A. Ngôn ngữ Java có phân biệt chữ hoa – chữ thường
B. Java là ngôn ngữ lập trình hướng đối tượng
C. Dấu chấm phẩy được sử dụng để kết thúc lệnh trong java
D. Chương trình viết bằng Java chỉ có thể chạy trên hệ điều hành win

Câu 2: Đâu không phải là một kiểu dữ liệu nguyên thủy trong Java?
A. double
B. int
C. long
D. long float

Câu 3: Trong câu lệnh sau: public static void main(String[] agrs) thì phần tử agrs[0] chứa giá trị gì?
A. Tên của chương trình
B. Số lượng tham số
C. Tham số đầu tiên của danh sách tham số
D. Không câu nào đúng

Câu 4: Phương thức next() của lớp Scanner dùng để làm gì?
A. Nhập một số nguyên
B. Nhập một ký tự
C. Nhập một chuỗi
D. Không có phương thức này

Câu 5: Muốn chạy được chương trình java, chỉ cần cài phần mền nào sau đây?
A. Netbeans
B. Eclipse
C. JDK
D. Java Platform

Câu 6: Gói nào trong Java chứa lớp Scanner dùng để nhập dữ liệu từ bàn phím?
A. java.net
B. java.io
C. java.util
D. java.awt

Câu 7: Phương thức nextLine() thuộc lớp nào?
A. String
B. Scanner
C. Integer
D. System

Câu 8: Tên đầu tiên của Java là gì?
A. Java
B. Oak
C. Cafe
D. James golings

Câu 9: G/s đã định nghĩa lớp XX với một phương thức thông thường là Display, sau đó sinh ra đối tượng objX từ lớp XX. Để gọi phương thức Display ta sử dụng cú pháp nào?
A. XX.Display;
B. XX.Display();
C. objX.Display();
D. Display();

Câu 10: Đâu KHÔNG phải là thành phần trong cấu trúc của lớp trong Java.
A. Tên lớp
B. Thuộc tính
C. Phương thức
D. Biến

Câu 11: Hàm tạo được sử dụng để hủy đối tượng
A. Cả hai câu đều đúng
B. Cả hai câu đều sai
C. Câu 1 đúng, câu 2 sai
D. Câu 2 đúng, câu 1 sai

Câu 12: Đọc đoạn mã lệnh sau. Sau khi thực thi chương trình sẽ in ra kết quả gì?

java

public class Main {
public static void main(String[] args) {
int x = -1;
String y = x + 3;
System.out.println("x = " + x + "y = " + y);
}
}

A. x=-1 y=2
B. Lỗi biên dịch: Uncompilable source code – incompatible types
C. x=-1 y=-13
D. x=-1 y=2

Câu 13: Đối tượng là gì?
A. Các lớp được tạo thể hiện từ đó
B. Một thể hiện của lớp
C. Một tham chiếu đến một thuộc tính
D. Một biến

Câu 14: Đâu là khai báo biến đúng trong Java?
(1) rollNumber
(2) r e a r l y s a l a r y (3) d o u b l e (4) $_ (5) mount#balance
A. 12345
B. 123
C. 124
D. 125

Câu 15: Đọc đoạn mã sau. Kết quả in ra của đoạn mã trên là gì?

java

int i = 1, j = 10;
do {
if (i > j) {
break;
}
j--;
} while (++i < 5);
System.out.println("i = " + i + " and j = " + j);

A. i = 6 and j = 5
B. i = 5 and j = 5
C. i = 6 and j = 4
D. i = 5 and j = 6

Câu 16: Với giá trị nào của x, biểu thức sau trả về giá trị true (x thuộc kiểu int). x % 3 == 0
A. 2
B. 7
C. 4
D. 9

Câu 17: Lựa chọn đáp án phù hợp:
(a) byte (1) 256
(b) char (2) 5000
(c) int (3) 4899.99
(d) short (4) 126
(e) double (5) ‘F’
A. a-4, b-5, c-2, d-1, e-3
B. a-1, b-2, c-2, d-1, e-3
C. a-1, b-5, c-4, d-4, e-3
D. a-5, b-4, c-1, d-2, e-3

Câu 18: Kiểu dữ liệu nào trong Java chứa giá trị bao gồm cả chữ và số?
A. int
B. byte
C. char
D. String

Câu 19: Kết quả in ra của đoạn mã trên là gì?

java

int i = 0;
do {
flag = false;
System.out.print(i++);
flag = i < 10;
continue;
} while ((flag) ? true: false);

A. 000000000
B. 0123456789
C. Lỗi biên dịch
D. Đoạn mã thực thi nhưng không in ra kết quả gì

Câu 20: Đâu là khai báo biến hợp lệ?
A. theOne
B. the One
C. 1the_One
D. $the One
A. theOne

Câu 21: Biểu thức nào có giá trị khác các biểu thức còn lại trong các biểu thức sau? Cho x=true thuộc kiểu boolean.
A. true
B. x==true;
C. 1==1
D. !x

Câu 22: Có mấy cách để truyền tham số vào cho một phương thức?
A. 2
B. 1
C. 3
D. 4

Câu 23: Kết quả in ra của đoạn mã bên dưới là gì?

java

public class Test {
public static int switchIt(int x) {
int j = 1;
switch (x) {
case 1:
j++;
case 2:
j++;
case 3:
j++;
case 4:
j++;
default:
j++;
}
return j + x;
}
public static void main(String[] args) {
System.out.println("value = " + switchIt(4));
}
}

A. value = 3
B. value = 4
C. value = 5
D. value = 7

Câu 24: Khi thực hiện lệnh: A a = new A(); a.calTotal(a); Giá trị của x sau khi thực hiện lệnh trên sẽ cho kết quả gì?

java

class A {
int x = 10;
public void calTotal(A a) {
a.x = 12;
System.out.println(a.x);
}
}

A. 10
B. 12
C. 22
D. 24

Câu 25: Đâu là khai báo đúng về lớp Cat?
A. class Cat{}
B. class public Cat(){}
C. class Cat{}
D. public Cat class{}

Câu 26: Đoạn mã sau có lỗi biên dịch gì?

java

public class Person {
protected 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 protected access.
C. age has protected access.
D. name has public access.

Câu 27: Một thành viên của một lớp được khai báo là private không những không thể được truy xuất từ bên trong lớp mà còn không nơi nào bên ngoài lớp.
A. Câu 1 sai, câu 2 đúng
B. Câu 1 đúng, câu 2 sai
C. Cả 2 câu cùng đúng
D. Cả 2 câu cùng sai

Câu 28: Phương thức nào được gọi khi tạo đối tượng mới của lớp?
A. Constructor
B. Method
C. Constructor method
D. Function

Câu 29: Các kiểu dữ liệu nào trong Java có thể được chuyển đổi tự động?
A. Byte, short, int, long, float, double
B. Byte, short, float, long, double
C. Byte, short, float, long, double
D. Byte, long, int, double

Câu 30: Các thuộc tính của lớp trong Java được gọi là gì?
A. Method
B. Constructor
C. Fields
D. Instance

Câu 31: Nếu phương thức của bạn ghi đè một trong số các phương thức của lớp cha, bạn có thể gọi phương thức bị ghi đè thông qua từ khóa nào?
A. parent
B. super
C. this
D. static

Câu 32: Đoạn mã sau có lỗi biên dịch nào?

java

class Student {
public String sayHello() {
return "Student";
}
}
public class Man extends Student {
public int sayHello() {
return 0;
}
}

A. Có lỗi biên dịch: sayHello() in Man cannot override sayHello() in Student return type int is not compatible with java.lang.String
B. Không có lỗi biên dịch.
C. Có lỗi biên dịch: sayHello() in Man cannot override sayHello() in Student because it is final
D. Có lỗi biên dịch: sayHello() in Man and in Student has the same access modifier

Câu 33: Đoạn mã sau có lỗi biên dịch gì?

java

public class Person {
protected 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 protected access.
C. age has protected access.
D. name has public access.

Câu 34: Một thành viên của một lớp được khai báo là private không những không thể được truy xuất từ bên trong lớp mà còn không nơi nào bên ngoài lớp.
A. Câu 1 sai, câu 2 đúng
B. Câu 1 đúng, câu 2 sai
C. Cả 2 câu cùng đúng
D. Cả 2 câu cùng sai

Câu 35: 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 36: Phát biểu nào sau đây là đúng:
A. Mảng có thể lưu giữ các phần tử thuộc nhiều kiểu dữ liệu khác nhau
B. Chỉ số của mảng có thể sử dụng kiểu số thực (float, double)
C. Biểu thức array.length được sử dụng để trả về số phần tử trong mảng
D. Một phần tử của mảng không thể truyền vào trong một phương thức

Câu 37: Chương trình sau in ra màn hình xâu nào?

java

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 38: Đoạn mã sau có lỗi biên dịch nào?

java

class Student {
}
public class Man extends Student {
public static void main(String[] args) {
Man m = new Student();
}
}

A. Không có lỗi biên dịch.
B. Có lỗi biên dịch: Incompatible type, required Man, found Student.
C. Có lỗi biên dịch: Incompatible type, required Student, found Man.
D. Do not use extends to make subclass.

Câu 39: Giá trị của x sau khi thực hiện lệnh trên sẽ cho kết quả gì?
Khi thực hiện lệnh: A a = new A(); a.calTotal(a);

java

class A {
int x = 10;
public void calTotal(A a) {
a.x = 12;
System.out.println(a.x);
}
}

A. 10
B. 12
C. 22
D. 44

Câu 40: Đâu là khai báo đúng về lớp Cat?
A. Class Cat{}
B. class public Cat(){}
C. class Cat{}
D. public Cat class{}

Câu 41: Đâu KHÔNG phải là cách thức để khởi tạo giá trị cho thuộc tính name có kiểu chuỗi của lớp Cat?
A. class Cat {String name = “noname”;}
B. public class Cat{ String name; public Cat(){name = “noname”;} }
C. public class Cat{ String name; public Cat(String x){name = x;} }
D. public class Cat{ String name; public Cat(){ String name = “noname”; } }

Câu 42: Đoạn mã sau có lỗi biên dịch gì?

java

public class Person {
protected 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 protected access.
C. age has protected access.
D. name has public access.

Câu 43: Câu 1: Một thành viên protected của một lớp có thể được truy xuất từ bất kỳ lớp nào trong cùng một gói và từ một lớp con nằm bên ngoài gói nếu lớp bên ngoài đó là lớp con. Câu 2: Một thành viên của một lớp được khai báo là private không những không thể được truy xuất từ bên trong lớp mà còn không nơi nào bên ngoài lớp.
A. Câu 1 sai, câu 2 đúng
B. Câu 1 đúng, câu 2 sai
C. Cả 2 câu cùng đúng
D. Cả 2 câu cùng sai

Câu 44: File chứa mã nguồn java sau khi được biên dịch có đuôi là gì?
A. .java
B. .class
C. .jav
D. .exe

Câu 45: Java platform gồm mấy thành phần?
A. 1
B. 2
C. 3
D. 4

Câu 46: Java Virtual Machine là gì?
A. Là một thành phần của Java platform dùng để đọc mã bytecode trong file .class
B. Là chương trình biên dịch của java dùng để biên dịch file nguồn java thành mã bytecode
C. Là chương trình chạy cho java
D. Tất cả các đáp án đều đúng

Câu 47: Java chạy trên hệ điều hành nào sau đây:
A. Microsoft Windows
B. Linux
C. Sun Solaris OS
D. Tất cả các đáp án đều đúng.

Câu 48: API là gì?
A. Thư viện mã nguồn của Java.
B. Là thư viện chứa các thành phần phần mềm tạo sẵn cung cấp các chức năng cho chương trình Java.
C. Thư viện cung cấp giao diện đồ họa cho chương trình Java.
D. Tất cả đều sai.

Câu 49: Ngôn ngữ lập trình Java cung cấp các chức năng nào sau đây?
A. Tất cả đáp án trên
B. Giao diện lập trình ứng dụng
C. Bộ công cụ giao diện người dùng
D. Thư viện tích hợp

Câu 50: Có bao nhiêu cách viết chú thích trong Java?
A. 1
B. 2
C. 3
D. 4

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)