父类页:
public class Tarric {
int num;
@Override
public String toString() {
return "Tarric [num=" + num + "]";
}
测试页中:
public static void main(String[] args) {
Tarric bus=new Tarric();
Tarric ship=new Tarric();
Tarric plane=new Plane();
bus.num=40;
ship.num=200;
plane.num=100;
System.out.println(bus);
System.out.println(ship);
System.out.println(plane);
}
运行结果
//重写的概念是:子类重写父类的方法叫重写 //重载的概念是:重写本类中的方法,其方法名相同,参数列表不同(包括顺序,类型等等) //那为什么要重写父类的方法呢? //因为父类的方法不满足要求,就好像你刚才要输出子类的类名,父类的toString是没办法完成的。因此只有子///类自己重写实现了 //IDE工具一般都是有快捷键(ctrl + alt + s)自动重写toString方法的。而且有个编程规范就是每建一个类最好//都重写toString方法
public String toString() { return "Tarric [num=" + num + "]"; } //这段里面根本就没有输出子类名称的语句。 //还是没怎么懂你的意思,Tarric这个类是父类,它重写了Object类的toString方法, //就是这一句话"Tarric [num=" + num + "]"这句话只是输出了类中的属性NUM 假设有个类叫A A extends Tarric 要想输出子类的类名的话,子类也得重写Tarric这个父类的toString方法。
没有看到你的子类