如何仅在方法是java中的instanceof时使用该方法
请检查下面的代码并告诉我怎么做 我试图仅对实现接口(可着色)的GeometricObjects子类使用howToColor方法如何仅在方法是java中的instanceof时使用该方法,java,Java,请检查下面的代码并告诉我怎么做 我试图仅对实现接口(可着色)的GeometricObjects子类使用howToColor方法 //GeometricObjects是一个抽象类 GeometricObjects[]数组=新的GeometricObjects[5]; 数组[0]=新三角形(4.0,3.0,5.0); 数组[1]=新的正方形(6.3); //继续所有元素。。。 for(int i=0;i
//GeometricObjects是一个抽象类
GeometricObjects[]数组=新的GeometricObjects[5];
数组[0]=新三角形(4.0,3.0,5.0);
数组[1]=新的正方形(6.3);
//继续所有元素。。。
for(int i=0;i
这不起作用,因为GeometricObjects不实现可着色
我有办法做到这一点吗
我希望我说得很清楚
p、 s:我是新来的:)。使用强制转换(已知不会抛出ClassCastException
,因为instanceof
检查)
谢谢,就这样
//GeometricObjects is an abstract class
GeometricObjects[] array = new GeometricObjects[5];
array[0]= new Triangle(4.0, 3.0, 5.0);
array[1]= new Square(6.3);
//continue for all elements...
for (int i = 0; i < array.length; i++) {
if(array[i] instanceof Colorable)
array[i].howToColor;
if(array[i] instanceof Colorable)
((Colorable) array[i]).howToColor;