Java 类构造器调用及对象属性初始化 - 示例解析
以下Java代码创建了一个名为Student的类和一个名为john的Student对象。它调用了哪个构造器?它将输出什么结果?
class Student {
String name;
Student(String name) {
this.name = name;
}
Student() {
this('Unknown');
}
}
public class Main {
public static void main(String[] args) {
Student john = new Student();
System.out.println('Name: ' + john.name);
}
}
在这段代码中,创建了一个名为Student的类,它包含两个构造器:一个带有一个String类型参数的构造器和一个无参构造器。
在main方法中,创建了一个名为john的Student对象,通过调用无参构造器创建该对象。
该无参构造器内部调用了带有一个String类型参数的构造器,并传入参数'Unknown'。这是通过使用关键字this来调用其他构造器来实现的。
因此,运行这段代码将会输出:'Name: Unknown'。因为john对象的name属性被初始化为'Unknown'。
原文地址: https://www.cveoy.top/t/topic/pSt 著作权归作者所有。请勿转载和采集!