首頁 >类库下载 >java类库 >Java繼承和介面

Java繼承和介面

高洛峰
高洛峰原創
2016-11-03 14:47:381814瀏覽

介面最關鍵的作用,也是使用介面最重要的原因:能上溯造型至多個基礎類別。使用介面的第二個原因與使用抽象基礎類別的原因是一樣的:防止客戶程式設計師製作這個類別的一個對象,以及規定它只是一個介面。這樣便帶來了一個問題:到底該使用一個介面還是一個抽象類別呢?若使用接口,我們可以同時獲得抽象類別以及接口的好處。所以假如想創建的基礎類別沒有任何方法定義或成員變量,那麼無論如何都願意使用接口,而不要選擇抽象類別。事實上,如果事先知道某些東西會成為基礎類,那麼第一個選擇就是把它變成一個介面。只有在必須使用方法定義或成員變數的時候,才應考慮採用抽象類別。

/**
 * Created by xfyou on 2016/11/3.
 * Java 继承和接口演示
 */
public class Adventure {
    static void t(CanFight x) {
        x.fight();
    }

    static void u(CanSwim x) {
        x.swim();
    }

    static void v(CanFly x) {
        x.fly();
    }

    static void w(ActionCharacter x) {
        x.fight();
    }

    public static void main(String[] args) {
        Hero i = new Hero();
        t(i);
        u(i);
        v(i);
        w(i);
    }
}

interface CanFight {
    void fight();
}

interface CanSwim {
    void swim();
}

interface CanFly {
    void fly();
}

class ActionCharacter {
    // 父类中实现了子类中继承的接口方法
    public void fight() {
    }
}

/**
 * 必须先 extends 然后再 impplements
 */
class Hero extends ActionCharacter implements CanFight, CanSwim, CanFly {
    @Override
    public void fly() {

    }

    @Override
    public void swim() {

    }
}


陳述:
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn
上一篇:Java日期轉換下一篇:Java日期轉換