interface drawTest {// 定义接口
public void draw();// 接口类的方法。
}
class Parallelograme extends QuadrangleUseInertface implements drawTest {
public void draw() {
System.out.println("平行四边形.draw()");
}
}
class SquareUseInterface extends QuadrangleUseInertface implements drawTest {
public void draw() {
System.out.println("正方形.draw()");
}
}
public class QuadrangleUseInertface {
public static void main(String[] args) {
drawTest[] d = { new SquareUseInterface(), new Parallelograme() };
for (drawTest x : d) {
x.draw();
}
}
}
是不是可以这样理解:
drawTest 就是 从 QuadrangleUseInertface类 定义而来的?
drawTest[] d = { new SquareUseInterface(), new Parallelograme() };
这句代码中转型关系是不是
new SquareUseInterface()和new Parallelograme()都向上转型为drawTest[]的对象?
如果上面转型关系成立的话,是不是可以说明 drawTest类 是new SquareUseInterface(), new Parallelograme()的父类?
可是代码中只说明new SquareUseInterface(), new Parallelograme()是QuadrangleUseInertface 的子类啊?
这里面究竟应该怎么理解呢?