在物件導向程式設計中,定義類別應該做什麼是有用的,但定義類別應該做什麼是有用的。
抽象方法定義了方法的簽章而不提供實現,子類別必須實作該方法。
Java 介面可讓您將應該做什麼的定義與如何做的實作完全分開。
介面可以指定沒有主體的方法,該方法必須由類別實作。
實作一個介面的類別的數量沒有限制,一個類別可以實作多個介面。
要實作接口,類別必須提供所描述方法的實作。
不同的類別可以以不同的方式實現相同的接口,但共享相同的方法集。
介面的使用允許多態性,因為來自不同類別的物件可以互換處理。
JDK 8 引入了介面定義方法預設實現的功能,允許介面指定行為。
儘管有標準實現,但介面的初衷僅定義基本不變的內容。
最初的重點將放在傳統介面上,並在本章末尾討論標準方法。
存取介面名稱{
ret-type 方法名稱1(param-list);
ret-type 方法名稱2(param-list);
類型 var1 = 值;
類型 var2 = 值;
// ...
ret-type 方法名N(param-list);
類型 varN = 值;
}
對介面的存取可以是公用或標準存取(包私有)。
如果未包含存取修飾符,則該介面只能由您的套件中的成員存取。
當宣告為公用時,該介面可以被任何程式碼使用,並且必須位於同名檔案中。
介面名稱可以是任何有效的識別碼。
在介面的傳統形式中,僅使用其傳回型別和簽章來宣告方法,本質上是抽象方法。
實作此介面的類別必須提供其所有方法的實現,這些方法是隱式公共的。
介面中的變數不是實例變數;它們是隱式公共的、最終的和靜態的,並且必須初始化(它們是常數)。
介面定義範例:
公共介面系列{
int getNext(); // 傳回系列中的下一個數字
無效重置(); // 重新啟動
無效 setStart(int x); // 定義初始值
}
以上是介面的詳細內容。更多資訊請關注PHP中文網其他相關文章!