java多態雜記

多態的定義:指允許不同類的對象對同一消息做出響應。即同一消息可以根據發送對象的不同而採用多種不同的行爲方式。(發送消息就是函數調用)
多態的實現要求:
1.要有繼承
2.要有重寫
3.父類引用指向子類對象
java兩種實現多態的方式:繼承和接口
代碼演示:

interface Fly{
    void fly();
}//定義一個接口,接口方式實現多態
abstract class Animal2{
    abstract void run();
    public void sleep(){
        System.out.println("睡覺");
    }
}//定義一個抽象類,繼承方式實現多態
class Dog1 extends Animal2 implements Fly{
    public void fly(){
        System.out.println("dog不能飛");
    }
    public void run(){
        System.out.println("dog能跑");
    }
}
public class PolymorphismTest{
    public static void main(){
        Fly one=new Dog1();
        Animal2 one2=new Dog1();
        one.fly();
        one2.run();
        one2.sleep();
    }

}

多態的實質:
多方法進行重寫,從而實現不同類的對象對同一對象做出響應
作用:消除類型之間的耦合關係
代碼演示:

interface Fly{
    void fly();
}
class DogTest implements Fly{
    public void fly(){
        System.out.println("dog不能飛");
    }
}
class CatTest implements Fly{
    public void fly(){
        System.out.println("Cat也不能飛");
    }
}
public class Polymorphism{
    public static void main(String[] args){
        Fly one=new DogTest();
        Fly two=new CatTest();
        one.fly();
        two.fly();
    }

}
發佈了43 篇原創文章 · 獲贊 15 · 訪問量 3萬+
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章