父类:
package cn.yq.java.duotai;
public class Animal {
String str;
public void voice(){
System.out.println("普通动物的叫声");
}
}
class Cat extends Animal{
public void voice(){
System.out.println("喵喵喵");
}
public void catchMouse(){
System.out.println("抓老鼠");
}
}
class Dog extends Animal{
public void voice(){
System.out.println("汪汪汪");
}
public void seedoor(){
System.out.println("看门");
}
}
class Pig extends Animal{
public void voice(){
System.out.println("哼哼哼");
}
}
===================================
主方法:
package cn.yq.java.duotai;
public class duoTaiTest2 {
public static void testAnimalVoice(Animal x){
x.voice();
if(x instanceof Cat){
((Cat) x).catchMouse();
}
}
public static void main(String [] args){
Animal c=new Cat();
testAnimalVoice(c);
Animal b=new Dog();
testAnimalVoice(b);
Dog b2=(Dog) b;
b2.seedoor();
Animal a=new Pig();
testAnimalVoice(a);
Animal d = new Animal();
d.voice();
}
}