Java自學筆記(九)
阿新 • • 發佈:2018-11-10
介面
這裡直接給出定義方式(關於概念,先把它當作是一個抽象類,確實有些類似,但是略有不同,抽象類概括的是某物的本質,介面是某物外的性質)public interface 介面名稱{ 抽象方法…… }(所以介面不能例項化物件,抽象方法了) 接口裡面的成員變數其實是常量,宣告方式為: public static final int i = 1;如果不書寫 public static final
類與介面的關係
類可以 實現介面,關鍵字implements, 格式: class 類 implements 介面名{ 重寫介面的抽象方法 } 注意:定義的類必須重寫所有介面的抽象方法之後,才可以例項化使用,不然會該類還是抽象類的(這點跟抽象類的繼承類似)interface Fu1
{
void func1();
}
interface Fu2
{
void func2();
}
class Zi implements Fu1,Fu2// 實現多介面。
{
public void func1(){}
public void func2(){} //再次注意重寫方法,去掉abstract,補充方法體
}
還有其它組合,例如子類繼承父類,父類再實現介面
介面與介面之間的關係,其實也是繼承,對比類不同的是,介面之間的繼承,是可以多繼承的(因為是抽象方法的緣故,子類實現不會發生找不到重寫後的抽象方法)。class Fu { public void func(){} } interface jiekou { pulbic abstract void newFunc(); } class Zi extends Fu implements jiekou { public void newFunc() { } //這樣子類重寫的介面方法就可以呼叫了,還可以使用父類func方法的功能 }
interface Fu1{
void func1();
}
interface Fu2{
void func2();
}
interface Fu3{
void func3();
}
interface Zi extends Fu1,Fu2,Fu3{
void func();
}