vietjack.com

300 Câu hỏi trắc nghiệm lập trình Java có đáp án - Phần 3
Quiz

300 Câu hỏi trắc nghiệm lập trình Java có đáp án - Phần 3

A
Admin
50 câu hỏiIT TestTrắc nghiệm tổng hợp
50 CÂU HỎI
1. Nhiều lựa chọn

Khi thực hiện khối lệnh trên sẽ cho kết quả là bao nhiêu?
int s = 0;
for (int i = 0; i < 10; i++)
s += i;
System.out.println(s);

A. 45

B. 0

C. 55

D. Không có kết quả đúng

2. Nhiều lựa chọn

Khối lệnh thực hiện chuyện gì?
int[] mang = new int[10];
int s = 0;
int j = 0;
for (int i: mang) {
i = ++j;
s += i;
}
System.out.println(“S = “ + s);

A. Nhập dữ liệu cho mang nguyên.

B. Tính tổng mảng nguyên.

C. Nhập dữ liệu và tính tổng mảng nguyên.

D. Tất cả đều sai.

3. Nhiều lựa chọn

Cho xâu kí tự s=”ABCDEF”. Để lấy kỳ tự thứ ‘E’ của xâu ký tự s(String) dùng câu lệnh nào sau đây?

A. s.charAt(5)

B. s.charAt(4)

C. s[5]

D. s[4]

4. Nhiều lựa chọn

Phát biểu nào sau đây là đúng: Chọn một câu trả lời

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.

5. Nhiều lựa chọn

Trong các khai báo sau đâu là khai báo không hợp lệ? Chọn một câu trả lời

A. int a1[][] = new int[][3];

B. int a2[][] = new int[2][3];

C. int a3[][] = new int[2][];

D. int a4[][] = {{}, {}, {}}

6. Nhiều lựa chọn

Câu 1: Nếu 2 đối tượng bằng nhau trong cùng một mảng và mảng đó được sắp xếp, các phần tử bằng nhau không thể thay đối thứ tự của
chúng?
Câu 2: Chỉ số mảng bắt đầu từ 1 Chọn một câu trả lời

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

7. Nhiều lựa chọn

Phát biểu sau nào là SAI

A. Mảng có kích thước không đổi trong toàn bộ chương trình

B. Mảng là cấu trúc dữ liệu có khả năng lưu trữ nhiều thành phần (phần tử) dữ liệu với kiểu khác nhau

C. Mảng N phần tử được đánh chỉ số từ 0 đến N - 1

D. Chỉ số mảng bắt đầu bằng 0

8. Nhiều lựa chọn

Lệnh sau in ra cái gì?
final int ARRAY_SIZE = 5;
ARRAY_SIZE = 10;
System.out.println("size = " + ARRAY_SIZE);

A. size = 10

B. size = 5

C. Lỗi ở dòng 3

D. Lỗi ở dòng 2

9. Nhiều lựa chọn

Chương trình sẽ in ra cái gì?
class A {
final public int method1(int a, int b) {
return 0;
}
}
class B extends A {
public int method1(int a, int b) {
return 1;
}
}
public class Test {
public static void main(Strings args[]) {
B b;
System.out.println("x = " + b.method1(0, 1));
}
}

A. x = 0

B. x = 1

C. Lỗi biên dịch

D. x=10

10. Nhiều lựa chọn

Hãy cho biết kết quả khi chạy đoạn chương trình sau?
class Student {
public int getAge() {
return 10;
}
}
public class Man extends Student {
public int getAge(int added) {
return super.getAge() + added;
}
public static void main(String[] args) {
Man s = new Man();
System.out.println(s.getAge());
System.out.println(s.getAge());
}
}

A. 10 11

B. 10 10

C. 11 11

D. Không in gì và báo lỗi

11. Nhiều lựa chọn

Đoạn mã sau có lỗi biên dịch nào?
class Student {
public String name;
}
public class Man extends Student {
private String name;
}

A. Có lỗi biên dịch:name has private access in Man.

B. Không có lỗi biên dịch.

C. Có lỗi biên dịch:for name access modifier in Man for name is weaker in Student.

D. Có lỗi biên dịch:name has public access in Student.

12. Nhiều lựa chọn

Đoạn mã sau có lỗi biên dịch nào sau?
class Student {
protected String name;
}
public class Man extends Student {
public static void main(String[] args) {
Man m = new Man();
m.name = "John";
}
}

A. name has protected access in Student.

B. Không có lỗi biên dịch

C. class Man has no attribute name.

D. class Man has no attribute or method name.

13. Nhiều lựa chọn

Đoạn mã sau có kết quả như thế nào?
class Student {
private String name;
}
public class Man extends Student {
private String name;
public static void main(String[] args) {
Student m = new Student();
m.name = "Peter";
}
}

A. Có lỗi biên dịch:name has private access in Student.

B. Không có lỗi biên dịch.

C. In ra chữ “student”

D. In ra chữ “Peter”

14. Nhiều lựa chọn

Đoạn lệnh nào sẽ đưa ra lỗi biên dịch? Chọn một câu trả lời

A. class A { public A(int x) {} }

B. class A {} class B extends A { B() {}}

C. Class A { A() {}} class B { public B() {} }

D. class Z { public Z(int) {} } class A extends Z { }

15. Nhiều lựa chọn

Đ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 {
}

A. Không có lỗi biên dịch.

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

C. Có lỗi biên dịch:class Man is empty.

D. Có lỗi biên dịch:class Student is empty, class Man is empty

16. Nhiều lựa chọn

Đ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

17. Nhiều lựa chọn

Đ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.

18. Nhiều lựa chọn

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

19. Nhiều lựa chọn

Chương trình sẽ in ra kết quả gì khi thực thi đoạn mã sau?
package pac02;
public class ClassA {
protected int xA;
public String yA;
}
---------
package pac01;
import pac02.ClassA;
public class Test {
public static void main(String[] args) {
ClassA a = new ClassA();
a.xA = 12;
a.yA = "Hello";
System.out.println("a.xA = " + a.xA + "; a.yA = " + a.yA);
}
}

A. Lỗi biên dịch dòng 2.7

B. Lỗi biên dịch dòng 2.5

C. Lỗi biên dịch dòng 2.5, 2.7

D. a.xA = 12; a.yA = Hello

20. Nhiều lựa chọn

Cho hai lớp Student và Main như sau. Khi biên dịch lớp Main có lỗi biên dịch không? Nếu có là lỗi nào?
package java.school;
public class Student {}
--
package java.test;
public class Main {
public static void main(String[] args) {
java.school.Student s = new java.school.Student();
}
}

A. Có lỗi biên dịch: can not find symbol test.Student

B. Không có lỗi biên dịch.

C. Có lỗi biên dịch: Add import java.school.Student

D. Có lỗi biên dịch: can not find constructor Student() for Student.

21. Nhiều lựa chọn

Đoạn mã sau có lỗi biên dịch gì?
public class Person {
private String name;
private 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. \ge has private access.

D. name has public access.

22. Nhiều lựa chọn

Khi biên dịch lớp Main có lỗi biên dịch không? Nếu có là lỗi nào?
package java.school;
public class Student {}
--
package java.test;
public class Main {
public static void main(String[] args) {
Student s = new Student();
}
}

A. Có lỗi biên dịch: can not find symbol test.Student

B. Không có lỗi biên dịch.

C. Có lỗi biên dịch: Add import java.school.Student

D. Có lỗi biên dịch: can not find constructor Student() for Student.

23. Nhiều lựa chọn

Chương trình sau in ra mà hình xâu nào?
public class Main {
public static void main(String[] args) {
String names[] = {
"John",
"Anna",
"Peter",
"Victor",
"David"
};
names = new String[5];
System.out.println(names[2]);
}
}

A. Có lỗi biên dịch: use new keyword to create object

B. Peter

C. Anna

D. null

24. Nhiều lựa chọn

Câu 1: Nếu 2 đối tượng bằng nhau trong cùng một mảng và mảng đó được sắp xếp, các phần tử bằng nhau không thể thay đối thứ tự của
chúng?Câu 2: Chỉ số mảng bắt đầu từ 1 Chọn một câu trả lời

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

25. Nhiều lựa chọn

Kết quả in ra của đoạn mã trên là gì?
public class Delta {
static boolean foo(char c) {
System.out.print(c);
return true;
}
public static void main(String[] argv) {
int i = 0;
for (foo(‘A’);
foo(‘B’) && (i < 2); foo(‘C’)) {
i++;
foo(‘D’);
12.
}
}
}

A. ABDCBDCB

B. ABCDABCD

C. Lỗi biên dịch

D. Chương trình không lỗi, nhưng khi chạy sẽ sinh lỗi

26. Nhiều lựa chọn

Trong đoạn mã trên x nhận giá trị bao nhiêu?
StringBuffer s = new StringBuffer("hello how are you how?");
int x = s.indexOf("ow");
System.out.println(x);

A. 7

B. 6

C. 5

D. Lỗi biên dịch

27. Nhiều lựa chọn

Phát biểu sau nào là SAI Chọn một câu trả lời

A. Mảng có kích thước không đổi trong toàn bộ chương trình

B. Mảng là cấu trúc dữ liệu có khả năng lưu trữ nhiều thành phần (phần tử) dữ liệu với kiểu khác nhau

C. Mảng N phần tử được đánh chỉ số từ 0 đến N - 1

D. Chỉ số mảng bắt đầu bằng 0

28. Nhiều lựa chọn

Lệnh sau in ra cái gì?
final int ARRAY_SIZE = 5;
ARRAY_SIZE = 10;
System.out.println("size = " + ARRAY_SIZE);

A. size = 10

B. size = 5

C. Lỗi ở dòng 3

D. Lỗi ở dòng 2

29. Nhiều lựa chọn

Đ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:class Student is empty.

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

D. Có lỗi biên dịch:class Student is empty, class Man has no constructor

30. Nhiều lựa chọn

Đoạn mã sau có lỗi biên dịch KHÔNG? Nêu KHÔNG thì in ra màn hình
kết quả nào?
class Student {
String sayHello() {
return "Student";
}
}
public class Man extends Student {
protected String sayHello() {
return "man";
}
public static void main(String[] args) {
Student s = new Man();
System.out.println(s.sayHello());
}
}

A. Có lỗi biên dịch.

B. Student

C. Man

D. Student Man

31. Nhiều lựa chọn

Hãy cho biết kết quả khi chạy đoạn chương trình sau?
class Student {
public int getAge() {
return 10;
}
}
public class Man extends Student {
public int getAge(int added) {
return super.getAge() + added;
}
public static void main(String[] args) {
Man s = new Man();
System.out.println(s.getAge());
System.out.println(s.getAge());
}
}

A. 10 11

B. 10 10

C. 11 11

D. Không in gì và báo lỗi

32. Nhiều lựa chọn

G/s đã khai báo lớp Student như sau. Đâu là cách tạo lớp Man là lớp
con của Student?
Class Student
{
Public String name;
}

A. public class Man extends Student{ }

B. public class Man extend Student{ }

C. public class Man :Student{ }

D. public class Man => Student{ }

33. Nhiều lựa chọn

Đoạn lệnh nào sẽ đưa ra lỗi biên dịch? Chọn một câu trả lời

A. class A { public A(int x) {} }

B. class A {} class B extends A { B() {}}

C. class A { A() {}} class B { public B() {} }

D. class Z { public Z(int) {} } class A extends Z { }

34. Nhiều lựa chọn

Phương thức nào đưa vào dòng 6 sẽ sinh lỗi?
class Super {
public float getNum() {
return 3.0f;
}
}
public class Sub extends Super {
}

A. public getNum() { }

B. public float getNum(double d) { }

C. public float getNum() { return 4.0f; }

D. public double getNum(float d) { return 4.0d; }

35. Nhiều lựa chọn

Đâu là một khai báo lớp kế thừa từ hai giao điện đúng? Chọn một câu trả lời

A. interface Summable {} interface Eatable {} class Math implements Summable;Eatable{}

B. interface Summable {} interface Eatable {} class Math implements Summable and Eatable{}

C. interface Summable {} interface Eatable {} class Math: Summable,Eatable{}

D. interface Summable {} interface Eatable {} class Math implements Summable,Eatable{}

36. Nhiều lựa chọn

Cho khai báo mảng sau. Lệnh trên in ra cái gì?
String[][] str = {"lap", "trinh", "java"};
System.out.println(str[1][1]);

A. trinh

B. java

C. Lỗi biên dịch ở dòng 1

D. Không in ra gì

37. Nhiều lựa chọn

Đoạn mã sau in ra màn hình xâu ký tự nào sau:
class Student {
public String sayHello() {
return "Student";
}
}
public class Man extends Student {
public String sayHello() {
return super.sayHello();
}
public static void main(String[] args) {
Student m = new Student();
System.out.println(m.sayHello());
}
}

A. Student

B. Man

C. Student Man

D. Man Student

38. Nhiều lựa chọn

Chương trình trên sai ở dòng nào?
class BreakDemo {
public static void main(String[] args) {
int[] arrayOfInts = {
32,
87,
3,
589,
12,
1076,
2000,
8,
622,
127
};
int searchFor = 12;
int i;
boolean fountIt = false;
for (i = 0; i < arrayOfInts.length; i++) {
if (arrayOfInts[i] == searchFor) {
fountIt = true;
break;
}
}
if (fountIt) {
System.out.println(“Found“ + searchFor + “at index“ + i);
} else System.out.println(searchFor + “not in the array”);
}
}

A. 2 và 6

B. 3 và 11, 15

C. 5, 7, 9

D. Chương trình không sai

39. Nhiều lựa chọn

Chương trình thực hiện công việc gì?
class BreakDemo {
public static void main(String[] args) {
int[] arrayOfInts = {
32,
87,
3,
589,
12,
1076,
2000,
8,
622,
127
};
int searchFor = 12;
int i;
boolean fountIt = false;–Môn Java cơsở14
Trang 14
Ket - noi.com diễnđàn công nghệ,
giáo dục
for (i = 0; i < arrayOfInts.length; i++) {
if (arrayOfInts[i] == searchFor) {
fountIt = true;
break;
}
}
if (fountIt) {
System.out.println(“Found“ + searchFor + “at index“ + i);
} else System.out.println(searchFor + “not in the array”);
}
}

A. Tìm 1 phần tử trong mảng.

B. So sánh các phần tử mảng với nhau.

C. Tính tổng mảng.

D. Tất cả đáp án đều sai.

40. Nhiều lựa chọn

Chương trình sau thực hiện công việc gì?
class ContinueDemo {
public static void main(String[] args) {
String searchMe = “peter piper picked a peck of pickled peppers”;
int max = searchMe.length();
int numPs = 0;
for (int i = 0; i < max; i++) {
if (searchMe.charAt(i) != 'p') continue;
numPs++;
}
System.out.println(“Found“ + numPs + “p 's in the string.”);
}
}

A. Đếm chữ cái p trong chuỗi ký tự

B. Tìm xem chữ p có đứng trước chữ i trong chuỗi hay không

C. Tìm kiếm chữ cái p trong chuỗi

D. Cả 3 đáp án đều sai.

41. Nhiều lựa chọn

Chương trình sau ra kết quả là gì?
class ContinueDemo {
public static void main(String[] args) {
String searchMe = “peter piper picked a peck of pickled pepers”;
int max = searchMe.length();
int numPs = 0;
for (int i = 0; i < max; i++) {
if (searchMe.charAt(i) != 'p') continue;
numPs++;
}
System.out.println(“Found“ + numPs + “p 's in the string.”);
}
}

A. Found 9 p's in the string.

B. Found 8 p's in the string.

C. Found 10 p's in the string.

D. Không có đáp án đúng.

42. Nhiều lựa chọn

Phương thức nào của class String trả về index của chuỗi ký tự con xuất hiện đầu tiên trong chuỗi ký tự char "

A. concat()

B. charAt()

C. indexOf()

D. Không có đáp án đúng.

43. Nhiều lựa chọn

Phương thức nào dùng để tìm kiếm một chuỗi trong một chuỗi khác trong class String của Java?

A. lastIndexOf()

B. substring()

C. toString()

D. Không có đáp án đúng

44. Nhiều lựa chọn

Trong Java, kiểu dữ liệu nào là một địa chỉ của đối tượng hoặc một mảng được tạo ra trong bộ nhớ?

A. Kiểu primitive

B. Kiểu reference

C. Kiểu format

D. Không có đáp án đúng

45. Nhiều lựa chọn

Chức năng của vòng lặp while là gi?

A. Kiểm tra kết quả của biểu thức boolean

B. Tránh mâu thuẫn giữa bên trong và bên ngoài switch

C. Lặp lại khối lệnh chứng nào điều kiện là đúng

D. Không có đáp án đúng

46. Nhiều lựa chọn

Java cung cấp một số câu lệnh làm thay đổi dòng điều khiển dựa trên các điều kiện. Lệnh nào dừng việc hoạt động của vòng lòng trong cùng và bắt đầu câu lệnh tiếp theo ngay sau khối lệnh?

A. break

B. continue

C. change

D. Jump

47. Nhiều lựa chọn

Trong đoạn mã trên x nhận giá trị bao nhiêu?
StringBuffer s = new StringBuffer("hello how are you?");
int x = s.charAt(6);
System.out.println(x);

A. 102

B. 104

C. h

D. Lỗi biên dịch

48. Nhiều lựa chọn

Đâu là một khai báo interface đúng? Chọn một câu trả lời

A. public interface MyInterface {}

B. public interface MyInterface { default int x; }

C. public interface MyInterface { protected int sum(int x, int y); }

D. public interface MyInterface { private int sum(int x, int y); }

49. Nhiều lựa chọn

Lệnh result = condition ? value1 : value2 có nghĩa gì?

A. Nếu condition là true thì result = value2, nếu condition là false thì result = value1

B. Nếu condition là true thì result = value1, nếu condition là false thì result = value2

C. Không có lệnh này

D. Nếu condition là true thì result sẽ đảo giá trị của value1 và value2

50. Nhiều lựa chọn

Lệnh nào ngừng vòng lặp hiện thời và bắt đầu vòng lặp tiếp theo?

A. continue

B. break

C. cease

D. end

© All rights reserved VietJack