首頁 > Java > Java基礎 > 主體

java中如何寫一個介面並實現

王林
發布: 2019-11-29 11:14:59
原創
5540 人瀏覽過

java中如何寫一個介面並實現

介面的定義方式如下:

[可见度] interface 接口名称 [extends 其他的接口名] {
        // 声明变量
        // 抽象方法}
登入後複製

介面的主體包含著抽象方法,但所有方法在介面內(定義上)都是抽象(Abstract)方法,所以abstract的關鍵字在介面內則不被需要。由於介面代表著一個對外行為的集合,所以任何方法在介面內都是public(公開的)。

如:

public interface Predator {
       boolean chasePrey(Prey p);
       void eatPrey(Prey p);
}
登入後複製

介面內的成員皆為靜態(static)、final及公開(public) ,反之,他們可以成為任何類別或介面的類型。

相關影片教學推薦:java線上教學

介面的實作:

public class Lion implements Predator {

        public boolean chasePrey(Prey p) {
               // programming to chase prey p (specifically for a lion)
        }

        public void eatPrey (Prey p) {
               // programming to eat prey p (specifically for a lion)
        }
}
登入後複製

說明:

如果一個類別實作了一個接口,而沒有實作接口的所有方法,則它必須被標註為abstract(抽象類別)。一個抽象類別的子類別必須實作它未完成的方法,假如該項子類別仍不會實作介面的所有方法,那麼該項子類別依然需要被標註為abstract。

介面通常被使用在Java程式語言,用來做回呼函數使用。 Java並不允許方法作為參數傳遞使用,因此,其中一個解決辦法則是可以定義一個接口,把這個接口當成方法的參數,以此來使用該項對象的方法簽名。

子介面

介面可以延伸為數個不同的接口,可以使用上述所描述的方法,舉例來說:

 public interface VenomousPredator extends Predator, Venomous {
         //介面主體
 }
登入後複製

以上的程式片段是合法定義的子接口,與類別不同的是,介面允許多重繼承,而PredatorVenomous 可能定義或是繼承相同的方法,比如說​​kill(Prey prey),當一個類別實作VenomousPredator的時候,它將同時實作這兩種方法。

相關文章教學推薦:java入門學習

#

以上是java中如何寫一個介面並實現的詳細內容。更多資訊請關注PHP中文網其他相關文章!

相關標籤:
來源:php.cn
本網站聲明
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn
熱門教學
更多>
最新下載
更多>
網站特效
網站源碼
網站素材
前端模板