Tạo Trắc Nghiệm

200+ câu trắc nghiệm Lập trình Java cơ sở có đáp án - Phần 7

30 câu · Đề ôn tập tổng hợp

Xem trước: đọc nhanh mọi câu dạng chữ, chưa tính giờ, chưa hiện đáp án.
Luyện tập: chọn đáp án là biết đúng sai ngay, kèm lời giải.
Thi thử: nộp bài mới chấm điểm và hiện lời giải.

Câu 1

Cho class như sau:

1: public interface Comparable {

2: int compareTo(Object other);

3: }

4: class Employee implement Comparable {

5: int compareTo(Object other) {

6: Employee other = (Employee) otherObject;

7: return 0;

8: }

9: }

Chương trình trên sai ở dòng nào?

Đáp án và lời giải

Đáp án: D

Câu 2

Cho class như sau:

1: public interface Comparable {

2: int compareTo(Object other);

3: }

4: class Employee implements Comparable {

5: public int compareTo(Object other) {

6: other = otherObject;

7: return 0;

8: }

9: }

Chương trình trên sai ở dòng nào?

Đáp án và lời giải

Đáp án: D

Câu 3

Cho class như sau:

1: public interface Comparable {

2: int compareTo(Employee other);

3: }

4: class Employee implements Comparable { // Giả định sửa lỗi cú pháp ở đây

5: public int compareTo(Employee other) {

6: return 0;

7: }

8: }

Chương trình trên sai ở dòng nào?

Đáp án và lời giải

Đáp án: D

Câu 4

Cho class như sau:

1: public interface Comparable {

2: int compareTo(Employee other);

3: }

4: class Employee implements Comparable {

5: public int compareTo(Object other) {

6: return 0;

7: }

8: }

Chương trình trên sai ở dòng nào?

Đáp án và lời giải

Đáp án: C

Câu 5

Cho class như sau:

1: public interface Comparable {

2: int compareTo(Employee other);

3: }

4: class Main {

5: x = new Comparable(Employee e);

6: System.out.print(x);

7: }

Chương trình trên sai ở dòng nào?

Đáp án và lời giải

Đáp án: C

Câu 6

Cho class như sau:

1: public interface Comparable {

2: int compareTo(Employee other);

3: }

4: class Main {

5: Comparable x;

6: x = new Employee();

7: System.out.print(x);

8: }

Chương trình trên sai ở dòng nào?

Đáp án và lời giải

Đáp án: D

Câu 7

Cho khối lệnh như sau:

class Employee {

private double luong = 0;

public Employee (double d) {

luong = d;

}

public void tangLuong(int s) {

luong += luong * s / 100;

}

public static void main(String[] args) {

Employee original = new Employee(50000);

Employee copy = original;

copy.tangLuong(10);

}

}

Khi chạy khối lệnh trên, luong của đối tượng original là bao nhiêu?

Đáp án và lời giải

Đáp án: B

Câu 8

Cho khối lệnh như sau:

class Employee {

private double luong = 0;

public Employee (double d) {

luong = d;

}

public void tangLuong(int s) {

luong += luong * s / 100;

}

public static void main(String[] args) {

Employee original = new Employee(50000);

Employee copy = original;

copy.tangLuong(10);

}

}

Khi chạy khối lệnh trên, luong của đối tượng copy là bao nhiêu?

Đáp án và lời giải

Đáp án: B

Câu 9

Cho khối lệnh như sau:

class Employee {

private double luong = 0;

// Constructor và các phương thức khác bị thiếu hoặc sai

public void tangLuong(int s) { // Giả sử phương thức đúng

luong += luong * s / 100;

}

public static void main(String[] args) {

// Lỗi khởi tạo new Employee(“John Public”,50000);

Employee original = new Employee(50000); // Giả sử khởi tạo đúng

Employee copy = original;

original.tangLuong(10);

}

}

Khi chạy khối lệnh trên, luong của đối tượng copy là bao nhiêu?

Đáp án và lời giải

Đáp án: D

Câu 10

Khi thực hiện khối lệnh sẽ cho kết quả là bao nhiêu?

int i=0; do { i += 1; } while (i == 0); System.out.println(“i = “ + i);

Đáp án và lời giải

Đáp án: B

Câu 11

Khi a=3 thực hiện khối lệnh sẽ cho kết quả của i là bao nhiêu?

int i=1; int s=1; for(i=1;i<=a;i++) s=s*i;

</=a;i++)>

Đáp án và lời giải

Đáp án: C

Câu 12

Cho khối lệnh sau:

int s = 0; for (int i = 0; i <= 10; i++) s += i;

Sau khi chạy khối lệnh s = ?

</=>

Đáp án và lời giải

Đáp án: B

Câu 13

Cho đoạn mã sau kết quả hiển thị sẽ là:

 

int n=12,k=2;

while(k<=n){ // Giả sử điều kiện là k<=n để tránh lặp vô hạn

for(k=2;k<=n;k++)

if(n%k==0){

break;

}

System.out.print(k + " ");

n=n/k;

}

</=n;k++)</=n){>

Đáp án và lời giải

Đáp án: A

Câu 14

Cho biết kết quả khi thi hành đoạn chương trình sau:

1: public class Short {

2: public static void main(String[] args ){

3: String s="Hello";

4: if(s.length ()>5)

5: ;//do nothing

6: else // Thêm else để code có logic

7: System.out.print("value is " + s);

8: }

9: }

Đáp án và lời giải

Đáp án: A

Câu 15

Cho biết kết quả khi thi hành đoạn chương trình sau:

1: public class Short {

2: public static void main(String[] args ){ 3:  String s=“Hello”;

4:       if(s.length ()>5)

5:       ;//do nothing

6: System.out.print(“value is”+ s); 7:   }

8:}

Đáp án và lời giải

Đáp án: D

Câu 16

Cho khối lệnh như sau, kết quả in ra màn hình sẽ là:

int k,n; for(k=1;k<10;k++) if((k%3==0)||(k%7==0)) System.out.print(k + "\t");

</10;k++)>

Đáp án và lời giải

Đáp án: C

Câu 17

Cho khối lệnh như sau, kết quả in ra màn hình sẽ là:

int k,n; for(k=1;k<10;k++) if((k%3==0)&&(k%7==0)) System.out.print(k + " ");

</10;k++)>

Đáp án và lời giải

Đáp án: D

Câu 18

Khi chạy đoạn chương trình sau cho kết quả bằng bao nhiêu?

int s,i;

for(i=1;i<=3;i++) {

s=s+i;

s=0;

}

System.out.print("s="+s);

</=3;i++)>

Đáp án và lời giải

Đáp án: D

Câu 19

Khi chạy đoạn chương trình sau cho kết quả bằng bao nhiêu?

int s=0,i;

for(i=1;i<=3;i++) {

s=s+i;

s=0; // s bị reset về 0 trong mỗi vòng lặp

}

System.out.print("s="+s);

</=3;i++)>

Đáp án và lời giải

Đáp án: A

Câu 20

Khi chạy đoạn chương trình sau cho kết quả bằng bao nhiêu?

int i;

float p;

p=1;

for(i=1;i<3;i++) {

p=p*i;

p=p*p;

}

System.out.print("p="+p);

</3;i++)>

Đáp án và lời giải

Đáp án: B

Câu 21

Khi chạy đoạn chương trình sau cho kết quả bằng bao nhiêu?

int [] a;

int s=0,i;

a=new int[3];

a[0]=1;

a[1]=2;

a[2]=5;

for(i=0;i<3;i++)

s=s+a[i];

System.out.print("s="+s);

</3;i++)>

Đáp án và lời giải

Đáp án: B

Câu 22

Khi chạy đoạn chương trình sau cho kết quả bằng bao nhiêu?

int [] a; int s,i;

a=new int[3];

a[0]=1;

a[1]=2;

a[2]=5;

for(i=0;i<3;i++) // Lỗi cú pháp i++

s=s+a[i];

System.out.print("s="+s);

</3;i++)>

Đáp án và lời giải

Đáp án: A

Câu 23

Khi chạy đoạn chương trình sau cho kết quả bằng bao nhiêu?

public class JavaAppClass {

public static int sum() {

int sum = 0, pt = 5;

for (int i = 0; i < pt; i++)

sum+=pt;

// sum; // Lệnh này sai cú pháp, phải là return sum;

}

public static void main(String[] args) {

System.out.print(JavaAppClass.sum());

}

}

</>

Đáp án và lời giải

Đáp án: A

Câu 24

Khi chạy đoạn chương trình sau cho kết quả bằng bao nhiêu?

public class StatInit {

static int x = 6,y;

static {

for (int i = 0; i < 6; i++)

y += x;

}

public static void main(String[] args) {

System.out.print(x);

}

}

</>

Đáp án và lời giải

Đáp án: B

Câu 25

Khi chạy đoạn chương trình sau cho kết quả bằng bao nhiêu?

public class StatInit {

static int x = 6,y;

static {

for (int i = 0; i < 6; i++)

y += x;

}

public static void main(String[] args) {

System.out.print(y);

}

}

</>

Đáp án và lời giải

Đáp án: C

Câu 26

Ưu điểm của nested class là gì?

Đáp án và lời giải

Đáp án: D

Câu 27

Xác định câu đúng?

Đáp án và lời giải

Đáp án: C

Câu 28

Khi chạy đoạn chương trình sau cho kết quả bằng bao nhiêu?

class Employee{

public int id;

public Employee() {

id = 1;

}

}

public class Accountant {

public static void main(String[] args) {

System.out.print(new Employee().id);

}

}

Đáp án và lời giải

Đáp án: B

Câu 29

Khi chạy đoạn chương trình sau cho kết quả bằng bao nhiêu?

class Employee{

private int id;

public Employee() {

id = 1;

}

}

public class Accountant {

public static void main(String[] args) {

System.out.print(new Employee().id);

}

}

Đáp án và lời giải

Đáp án: D

Câu 30

Xác định câu SAI?

Đáp án và lời giải

Đáp án: C