接口在java編程語言中是一個抽象類型,是抽象方法的集合,接口通常以interface來聲明。一個類通過繼承接口的方式,從而來繼承接口的抽象方法。那java中接口只允許單一繼承嗎?下面來我們就來給大家講解一下。
是的,java接口不能多繼承,只能單繼承,但可以實現(xiàn)多個接口。
java接口有哪些分類?
1.單方法接口
以下是引用片段:
public interface Actionlistener { public abstract void actionPerformed(ActionEvent event); }
僅且只有一個方法,只有實現(xiàn)了這個接口(重寫這個接口中的唯一一個方法),你才有資格去事件監(jiān)聽器列表里注冊(參數(shù)為Actionlistener類型),當(dāng)事件源變動時,自動調(diào)用這個唯一的actionPerformed方法。
2.標(biāo)識接口
是沒有任何方法和屬性的接口。標(biāo)識接口不對實現(xiàn)它的類有任何語意上的要求,它僅僅表明了實現(xiàn)它的類屬于一個特定的類型(傳遞)。
不推薦過多的使用標(biāo)識接口。
3.常量接口
用Java接口來聲明一些常量,然后由實現(xiàn)這個接口的類使用這些常量(以前在做畫板的時候這么干過)。建議不要模仿這種常量接口的做法。
【范例】
定義接口格式:
[public]interface 接口名稱 [extends父接口名列表] { //靜態(tài)常量 [public] [static] [final] 數(shù)據(jù)類型變量名=常量值; //抽象方法 [public] [abstract] [native] 返回值類型方法名(參數(shù)列表); }
實現(xiàn)接口格式:
[修飾符] class 類名[extends 父類名][implements 接口A, 接口B, ···] { 類成員變量和成員方法; 為接口A中的所有方法編寫方法體, 實現(xiàn)接口A; 為接口B中的所有方法編寫方法體, 實現(xiàn)接口B; }
實例:
本例定義接口AreaInterface,其中有靜態(tài)常量pai和求面積的抽象方法area()。類Circle和類Rectangle實現(xiàn)了AreaInterface接口,即為接口中的抽象方法area()編寫了滿足各自要求的方法體,分別求圓形和長方形的面積。
程序:AreaInterface.java
package intrFace; public interface AreaInterface { double pai = Math.PI; double area(); }
程序:Circle.java
package intrFace; public class Circle implements AreaInterface { double r; public Circle(double x) { r = x; } //實現(xiàn)接口中的抽象方法,求圓面積 public double area() { return pai * r * r; } public String toString() { return "圓:r=" + r + "\tarea=" + area(); } }
程序:Rectangle.java
package intrFace; public class Rectangle implements AreaInterface { double x, y; public Rectangle(double a, double b) { x = a; y = b; } public double area() //實現(xiàn)接口中的抽象方法,求長方形面積 { return x * y; } public String toString() { return "長方形:x=" + x + ";y=" + y + "\t" area = +area(); } }
Java接口有以上這三種分類,java接口在程序中還是很重要的,有了接口能夠保證代碼的安全以及穩(wěn)定,但是接口不能多繼承,只能單繼承,最后大家如果想要了解更多初識java知識,敬請關(guān)注賦能網(wǎng)。
本文鏈接:
本文章“java中接口只允許單一繼承嗎?java接口有哪些分類?”已幫助 82 人
免責(zé)聲明:本信息由用戶發(fā)布,本站不承擔(dān)本信息引起的任何交易及知識產(chǎn)權(quán)侵權(quán)的法律責(zé)任!
本文由賦能網(wǎng) 整理發(fā)布。了解更多培訓(xùn)機(jī)構(gòu)》培訓(xùn)課程》學(xué)習(xí)資訊》課程優(yōu)惠》課程開班》學(xué)校地址等機(jī)構(gòu)信息,可以留下您的聯(lián)系方式,讓課程老師跟你詳細(xì)解答:
咨詢熱線:4008-569-579