接口的總結:
1.接口本身 是一個特殊的類
2.接口的成員變量 預設是 public static final 修飾的,也就是說接口中的成員變量實際上是一個常量
3.接口中的 方法 都是抽象方法,預設修飾 public abstract
4.接口是不能夠建立對象的
5.接口是沒有構造方法
6.因為接口是提供給 類 去使用的,非抽象類去實作一個接口的時候,必須要把接口中所有的方法 都要實作。
接口的文法:
修飾符 interface 接口類{} 或者 修飾符 interface 接口類 extends 父接口1,父接口2{}
類實作的文法:
class 類名 extends 父類名 implements 接口1,接口2{類的内容}
并且接口方法的定義:
1.接口中的方法都是抽象方法。
2.接口中的方法,不能有任何的修飾。
3.編譯器在編譯的時候會自動為你加上public static fianl修飾。
如何使用接口的例子:
//定義接口類
interface Lock{
void unlock();
}
// 建立父類連結接口
abstract class Door implements Lock{
void openDoor(){
}
}
子類繼承父類,并繼承父類連結的接口并重寫方法
class ThelfProofDoor extends Door{
public void unlock(){
}
}
接口的作用:
1.擴充功能
2.定義限制規範
3.程式解耦合性
類和接口的注意點:
1.當一個 <非抽象類> 在實作 接口的時候,必須實作接口中 <所有的方法>
2.當一個抽象類,在實作接口的時候,可以實作也可以不實作 接口中的方法, 因為抽象類的子類來實作
3.一個類可以實作多個接口
為什麼抽象類可以實作也可以不實作接口中的方法?
因為抽象類本身就不能夠被執行個體化,它給子類繼承用的,是以它不可以實作這個接口中的方法,而讓對應的子類來實作就可以了。(注意:如果子類也沒有實作接口中的方法,則會出錯。)
接口與接口之間的關系:
在java中類是單繼承的,一個類隻有一個直接父類,接口也是可以繼承的,但是它是多繼承的,也就是一個接口可以繼承多個接口(接口的繼承是指繼承接口的方法,而且能夠多繼承的關鍵點是接口的方法是實作這個接口的類來實作的)
例如:
interface A{
void test();
}
interface B{
void test2();
}
class Test implements A,B{
public void test(){
}
public void test2(){
}
}
并且類與類之間出來繼承,接口,還有關聯。而關聯又分為依賴、聚合、組合依賴。這是需要我們了解的。