implements是一個類,實現一個接口用的關鍵字,它是用來實現接口中定義的抽象方法。實現一個接口,必須實現接口中的所有方法。
基本介紹
- 中文名:實現
- 外文名:implements
- 意思:類實現一個接口用的關鍵字
- 用途:實現接口中定義
- 性質:抽象方法。
定義,詳解,區別,
定義
還有幾點需要注意:
(1)接口可以被多重實現(implements),抽象類只能被單一繼承(extends)
(2)接口只有定義,抽象類可以有定義和實現
(3)接口的欄位定義默認為:public static final, 抽象類欄位默認是"friendly"(本包可見)
詳解
比如:People是一個接口,他裡面有say這個方法。
接口的定義:
public interface People{
public void say();
}
但是接口沒有方法體。只能通過一個具體的類去實現其中的方法體。
比如 Chinese這個類,就實現了People這個接口。
接口的實現:
public class Chinese implements People{
public void say() {
System.out.println(" 你好!");
}
}
接口的調用:
People chinese = new Chinese() ;
chinese.say();
接口可以有不同的實現,即使用不同的類實現。
在java中extends表示子類繼承父類,如類A繼承類B寫成
class A extends B
{
//.....
}
implements 的意思更接近“實現”,比如實現一個接口的方法。
區別
與Extends的區別
extends,表示對父類的繼承,可以實現父類,也可以調用父類初始化 this.parent()。而且會覆蓋父類定義的變數或者函式。
implements,表示對接口的實現,接口通過關鍵字interface 進行定義。eg:public class S implements F,在接口F中對方法進行聲明,在類S中對該方法進行實現。
這兩種實現的具體使用,是要看項目的實際情況,需要實現,不可以修改,用implements,只定義接口。需要具體實現,或者可以被修改,擴展性好,用extends。