数组中存储的java对象实际是“内存地址”,数组中存储的每个元素是“引用”
public class ArrayTest {
public static void main(String[] args) {
//a是一个数组
//a[0]是数组中的元素
Animal a=new Animal();
Animal b=new Animal();
Animal[] a1 ={a,b};
for (int i = 0; i <a1.length ; i++) {
Animal animal1 = a1[i];
animal1.move();//java对象的move方法
}
}
}
class Animal {
public void move() {
System.out.println("Animal move");
}
}
public class ArrayTest {
public static void main(String[] args) {
Animal[] k = {new Cat(), new Dog()};
for (int i = 0; i < k.length; i++) {//向下转型
if (k[i] instanceof Cat) {
Cat cat = (Cat) k[i];
cat.eat();
} else if (k[i] instanceof Dog) {
Dog dog = (Dog) k[i];
dog.jiao();
}
}
}
}
class Animal {
public void move() {
System.out.println("Animal move");
}
}
class Cat extends Animal {
public void eat() {
System.out.println("Cat move");
}
}
class Dog extends Animal {
public void jiao() {
System.out.println("Dog move");
}
}