多态

所谓多态,实际上就是一个对象的多种状态;

下面例子中,Tiger可以看做Tiger,也可以看做Animal

      Cat  可以看做Cat,也可以看做Animal

      Dog 可以看做Dog,也可以看做Animal

示例代码:

package com.java1995;

//创建一个Animal类

public class Animal {
public void showMe(){
System.out.println("我是动物");
}

}

package com.java1995;

//创建一个Tiger类,继承Animal类,并对其showMe()方法进行重写

public class Tiger extends Animal {
public void showMe(){
System.out.println("我是老虎");
}

}

package com.java1995;

//同上,Cat类,继承Animal类,重写方法

public class Cat extends Animal {
//public void showMe(){
//System.out.println("我是猫");
//}

}

package com.java1995;

//同上,Dog类,继承Animal类,重写方法

public class Dog extends Animal {
public void showMe(){
System.out.println("我是狗");
}

}

package com.java1995;

//创建测试类,演Java语言的多态性,Tiger,Cat,Dog类

public class Test {
public static void main(String [] args){

Animal a=new Animal();
a.showMe();

//创建Tiger类的两种方法
Tiger t=new Tiger();        //第一种
t.showMe();

Animal t2=new Tiger();    //第二种,Tiger属于Animal类,也属于Tiger类
t2.showMe();

Animal c=new Cat();
c.showMe();

Animal t3=new Tiger();
showMe(t3);
Test.showMe(t);

}

//创建一个showMe的静态方法,整合上面a.showMe(); ps:可不写
public static void showMe(Animal a){
a.showMe();
}
}

05-07 15:08