khoahoc.vietjack.com

Câu hỏi:

11/06/2026 6 Lưu

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

}

Chọn một Câu trả lời

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.

Quảng cáo

Trả lời:

verified Giải bởi Vietjack

Chọn đáp án B

Vì:

Thuộc tính không có ràng buộc về access modifier ở lớp con và lớp cha.Và thuộc tính ở mỗi lớp có thể nhận default, protected, private, public là access modified.

CÂU HỎI HOT CÙNG CHỦ ĐỀ

Câu 1

A.

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

B.

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

C.

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

D.

int a4[][] = {{}, {}, {}};

Lời giải

Chọn đáp án A

Vì:

+ Bắt buộc phải xác định số dòng trong khai báo mảng hai chiều.

Lời giải

Chọn đáp án B

Vì:

+ Lệnh đầu tiên trong hàm main() sẽ sinh ra đối tượng s từ lớp Man.

+ Lệnh thứ 2 của hàm main sẽ gọi phương thức getAge() của đối tượng s, tuy nhiên s kế thừa từ lớp Student do đó sẽ triệu gọi phương thức getAge của lớp Student => in ra 10

+ Lệnh thứ 3 của hàm main() sẽ gọi phương thức getAge() của đối tượng s => gọi đến phương thức getAge() của lớp Student => in ra 10

Lời giải

Bạn cần đăng ký gói VIP ( giá chỉ từ 250K ) để làm bài, xem đáp án và lời giải chi tiết không giới hạn.

Nâng cấp VIP

Câu 4

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

Lời giải

Bạn cần đăng ký gói VIP ( giá chỉ từ 250K ) để làm bài, xem đáp án và lời giải chi tiết không giới hạn.

Nâng cấp VIP