类 Lion 继承自 Animal。
这是我的代码:
Animal a = new Animal();
Lion b = new Lion();
Animal c = (Animal) b;
Animal[] arr = { a, b, c };
for (int i = 0; i < arr.length; i++) {
System.out.println(arr[i].getClass().getName());
arr[i].run();
}
结果是:
从例子中可以看出,"c"被认为是一只"狮子"而不是"动物"。为什么会这样呢?test2.Animal
动物奔跑...
test2.Lion
狮子奔跑...
test2.Lion
狮子奔跑...