JavaScript is required

Đâ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"; } }
Trả lời:

Đáp án đúng: D


Phương án A, B, C đều là các cách khởi tạo giá trị cho thuộc tính `name` của lớp `Cat`. - A: Khởi tạo trực tiếp khi khai báo thuộc tính. - B: Khởi tạo trong constructor mặc định. - C: Khởi tạo thông qua constructor có tham số. Phương án D KHÔNG phải là cách khởi tạo giá trị cho thuộc tính `name` của lớp `Cat`, vì nó khai báo một biến cục bộ `name` khác bên trong constructor mặc định, biến này sẽ che mất thuộc tính `name` của lớp. Do đó, thuộc tính `name` của lớp `Cat` sẽ không được khởi tạo.

Câu hỏi liên quan