-1
背景信息:我有一个类椭圆,它继承了Shape类中的颜色和继承自椭圆类的圆类。使用toString重写和继承来打印arraylist?
在圆形和椭圆形中,我不得不重写toString方法并连接一个显示“圆”或椭圆以及形状的面积,周长和颜色的字符串。
在我的主文件中,我需要现在打印形状的整个数组列表“调用每个存储对象的toString方法。”
我不知道如何告诉它如果它是一个圆形时为圆形调用toString,在椭圆形时是为椭圆形形式的toString。
@Override
public String toString()
{
return "Ellipse" + " " + super.getColor() + " "+ this.calcArea() + " " + this.calcPerimeter();
}
这是我的椭圆toString重写方法。
因此,它是为做一个对通过ArrayList和 的System.out.println(形状)一样简单; (形状是我的数组列表的名字)? – Exziled 2014-10-07 14:49:33
“*编译器会为你做这件事*”它不是编译器,它将处理它,而是JVM本身在运行时。编译器只能使用静态绑定,而这里发生的是动态绑定(多态)。 – Pshemo 2014-10-07 14:55:32
@Pshemo感谢那个catch更新了它。 – StackFlowed 2014-10-07 14:57:25