如何在Doctor类中编写构造函数初始化私有字段doctor_name?
正确初始化Doctor类私有字段
doctor_name的构造函数写法 你的代码问题在于构造函数的参数不能使用private修饰符,这属于语法错误。下面是正确的实现方式:
步骤1:定义私有字段
首先在Doctor类中声明私有字段doctor_name:
class Doctor { // 私有字段 private String doctor_name; }
步骤2:编写构造函数初始化字段
构造函数的参数不需要访问修饰符,在构造函数体内将参数值赋值给私有字段即可:
class Doctor { private String doctor_name; // 构造函数:初始化私有字段 public Doctor(String doc_name) { this.doctor_name = doc_name; } }
补充说明
- 使用
this关键字是为了区分类的私有字段和构造函数的参数(当两者名称相同时),如果参数名和字段名不同,也可以省略this,比如:public Doctor(String name) { doctor_name = name; } - 如果你需要无参构造函数,可以额外添加,但Java不会在你定义了有参构造后自动生成无参构造,需要手动编写:
public Doctor() { // 可以给字段设置默认值,比如 this.doctor_name = "Unknown"; }
内容的提问来源于stack exchange,提问作者Isuru Udana
相关产品推荐
相关产品推荐

