方法名最好不要和构造器重名,要不去掉void,要不将sub()改个名字
the local variable p is never read 表示 person p = new sub();声明了p之后没有使用它,随便对p进行什么操作都可以去除警告,如system.out.println(p.name);
this method has a constructor name 的意思是:这个方法中含有一个构造器的名字
the local variable p is never read 的意思是:局部变量p没有被使用。当你声明了一个变量,但并没有使用它时,就会出现这样的黄色警告
你改成下面就可以
public class person{
public string name;
}
public class sub extends person{
public sub(){//构造函数,不用带任何东西
system.out.println(name);
}
}
但是这样只能通过编译,不能运行。
如何要你就加了main就可以的。
第二个你的错误是你的public static void main()写在了person里面,应该写在sub里面就可以运行。