java多态内存分析实例图解



java多态内存分析。java多态是重要的知识点,我们一定要清楚的,而java多态内存分析相对会比较难,在这里给大家提供了多态的内存分析图实例,希望可以给您带来帮助!

定义动物类animal.java作为父类。

package cn.bjsxt.oop.polymorphism;

public class Animal {
String str;
public void voice(){
System.out.println(“普通动物叫声!”);
}
}

class Cat extends Animal {//猫继承了动物animal类
public void voice(){
System.out.println(“喵喵喵”);
}
public void catchMouse(){//子类有自己的方法,在父类没有这个方法,在多态时不能运行该方法,因为父类没有编译该方法。
System.out.println(“抓老鼠”);
}
}

}

多态测试类实例test.java:


package cn.bjsxt.oop.polymorphism;

public class Test {

public static void testAnimalVoice(Animal c){//传入的是animal类,包含了猫狗猪。
c.voice();
if(c instanceof Cat){//判断c是否为cat对象
((Cat) c).catchMouse();
}
}

public static void main(String[] args) {
Animal a = new Cat();
Cat a2 = (Cat)a;
testAnimalVoice(a);

 

}

java多态_内存分析

java多态_内存分析