可能是一个菜鸟问题,但是为什么此代码显示null?
public class Bug1 {
private String s;
public void Bug1() {
s = "hello";
}
public String toString() {
return s;
}
public static void main(String[] args) {
Bug1 x = new Bug1();
System.out.println(x);
}
}
最佳答案
您在此处使用void
关键字,使您的“构造函数”成为一种方法(从不调用),因此不会初始化String
s
。默认情况下,类级别的对象引用为null
。
public void Bug1() {
要修复,请更改为:
public Bug1() {
构造函数没有返回类型。