java定義一個(gè)接口代碼 java編寫一個(gè)接口

Java中的接口怎么實(shí)現(xiàn)?

舉個(gè)面積的例子:在java中,定義一個(gè)接口,聲明計(jì)算長(zhǎng)方形面積和周長(zhǎng)的抽象方法,再用一個(gè)類去實(shí)現(xiàn)這個(gè)接口,再編寫一個(gè)測(cè)試類去使用這個(gè)接口。首先,接口必須單獨(dú)存放,如果我們用eclipse編程的話,它們提示:The public type **** must be defined in its own file,意思是必須要定義在其自己的文件中,所以要為接口文件單獨(dú)存放起來,舉例,我們的接口要實(shí)現(xiàn)獲到矩形的長(zhǎng),寬,面積,周長(zhǎng),所以定義以下的接口。public interface calrect {\x0d\x0apublic abstract int calarea();\x0d\x0apublic abstract int calgirth();\x0d\x0apublic abstract int getx();\x0d\x0apublic abstract int gety();\x0d\x0a}注意,定義接口就像定義類一樣,接口的訪問控制符只能用public,用public定義的接口可以被所有的類和包引用,而缺省的則只能被同一個(gè)包中的其他類和接口引用,這符合JAVA中訪問控制符的一般要求,關(guān)于接口再引用其他接口則是后話。以上接口文件名為calrect.java.另外需要指出的是接口中不能給方法給出方法體。接下來,需要定義一個(gè)類來實(shí)現(xiàn)接口,因?yàn)椴恢繨AVA的內(nèi)置矩形類是什么名,所以為了安全,將該類定義為RRect,這可以認(rèn)為是一種安全策略。關(guān)于implements,可以參考其他資料。該類引用了接口calrect,所以必須對(duì)calrect中的方法一一實(shí)現(xiàn)。//定義矩形類 應(yīng)用接口class RRect implements calrect{private int x;\x0d\x0aprivate int y;public RRect (){\x0d\x0a x=3;y=4;\x0d\x0a}\x0d\x0apublic int calarea(){\x0d\x0a return x*y;\x0d\x0a}\x0d\x0apublic int calgirth(){\x0d\x0a return x*2+y*2;\x0d\x0a}\x0d\x0apublic int getx(){\x0d\x0a return x;\x0d\x0a}\x0d\x0apublic int gety(){\x0d\x0a return y;\x0d\x0a}\x0d\x0a}//接下來,定義一個(gè)測(cè)試類,所謂測(cè)試類,我理解為定義一個(gè)類,在其定義類RRect的對(duì)象,并驗(yàn)證其中的方法,看看是不是可以正常使用//定義Class1類\x0d\x0apublic class Class1{\x0d\x0aRRect rect;\x0d\x0apublic static void main(String []args){\x0d\x0a RRect rect=new RRect();\x0d\x0a System.out.println("矩陣的長(zhǎng)"+ rect.getx());\x0d\x0a System.out.println("矩陣的寬"+ rect.calarea());\x0d\x0a System.out.println("矩陣的面積"+ rect.calarea());\x0d\x0a System.out.println("矩形的周長(zhǎng) "+rect.calgirth());\x0d\x0a}\x0d\x0a\x0d\x0a}運(yùn)行結(jié)果:矩陣的長(zhǎng)3\x0d\x0a矩陣的寬12\x0d\x0a矩陣的面積12\x0d\x0a矩形的周長(zhǎng) 14注:接口單存放,接口實(shí)現(xiàn)類和測(cè)試類可以存放在一個(gè)文件中

讓客戶滿意是我們工作的目標(biāo),不斷超越客戶的期望值來自于我們對(duì)這個(gè)行業(yè)的熱愛。我們立志把好的技術(shù)通過有效、簡(jiǎn)單的方式提供給客戶,將通過不懈努力成為客戶在信息化領(lǐng)域值得信任、有價(jià)值的長(zhǎng)期合作伙伴,公司提供的服務(wù)項(xiàng)目有:申請(qǐng)域名、網(wǎng)絡(luò)空間、營(yíng)銷軟件、網(wǎng)站建設(shè)、茂南網(wǎng)站維護(hù)、網(wǎng)站推廣。

java怎么定義一個(gè)圖形接口

java定義一個(gè)圖形接口步驟:1:定義一個(gè)圖形接口 Shap ,此接口擁有兩個(gè)抽象方法,第一個(gè)為求圖形面積(名稱 為:getArea();),第二個(gè)為求圖形周長(zhǎng)(名稱為:getPerimeter();)?

2:定義一個(gè)圓形 Circle 類,實(shí)現(xiàn)圖形接口 Shap,擁有半徑 r 屬性,并根據(jù)圓形特點(diǎn)完成接口 中提供的兩個(gè)方法.?

3:定義一個(gè)長(zhǎng)方形 Rectangle 類,實(shí)現(xiàn)圖形接口 Shap,擁有長(zhǎng) length、寬 width 屬性并根據(jù) 長(zhǎng)方形的特點(diǎn)實(shí)現(xiàn)接口中提供的兩個(gè)方法.?

4:定義一個(gè)正方形Square類,實(shí)現(xiàn)圖形接口Shap,擁有邊長(zhǎng)length屬性并根據(jù)正方形特點(diǎn) 完成接口中提供的兩個(gè)方法.?

5.新建一個(gè)測(cè)試類,在 main 方法中分別測(cè)試每個(gè)圖形類提供的方法是否可以得出正確結(jié)果

java怎么定義一個(gè)接口?

java中接口的定義和接口的實(shí)現(xiàn)

1.接口的定義

使用interface來定義一個(gè)接口。接口定義同類的定義類似,也是分為接口的聲明和接口體,其中接口體由常量定義和方法定義兩部分組成。定義接口的基本格式如下:

[修飾符] interface 接口名 [extends 父接口名列表]{

[public] [static] [final] 常量;

[public] [abstract] 方法;

}

修飾符:可選,用于指定接口的訪問權(quán)限,可選值為public。如果省略則使用默認(rèn)的訪問權(quán)限。

接口名:必選參數(shù),用于指定接口的名稱,接口名必須是合法的Java標(biāo)識(shí)符。一般情況下,要求首字母大寫。

extends 父接口名列表:可選參數(shù),用于指定要定義的接口繼承于哪個(gè)父接口。當(dāng)使用extends關(guān)鍵字時(shí),父接口名為必選參數(shù)。

方法:接口中的方法只有定義而沒有被實(shí)現(xiàn)。

例如,定義一個(gè)用于計(jì)算的接口,在該接口中定義了一個(gè)常量PI和兩個(gè)方法,具體代碼如下:

1 public interface CalInterface

2 {

3 ? ? final float PI=3.14159f;//定義用于表示圓周率的常量PI

4 ? ? float getArea(float r);//定義一個(gè)用于計(jì)算面積的方法getArea()

5 ? ? float getCircumference(float r);//定義一個(gè)用于計(jì)算周長(zhǎng)的方法getCircumference()

6 }

注意:

與Java的類文件一樣,接口文件的文件名必須與接口名相同。

2.接口的實(shí)現(xiàn)

接口在定義后,就可以在類中實(shí)現(xiàn)該接口。在類中實(shí)現(xiàn)接口可以使用關(guān)鍵字implements,其基本格式如下:

[修飾符] class 類名 [extends 父類名] [implements 接口列表]{

}

修飾符:可選參數(shù),用于指定類的訪問權(quán)限,可選值為public、abstract和final。

類名:必選參數(shù),用于指定類的名稱,類名必須是合法的Java標(biāo)識(shí)符。一般情況下,要求首字母大寫。

extends 父類名:可選參數(shù),用于指定要定義的類繼承于哪個(gè)父類。當(dāng)使用extends關(guān)鍵字時(shí),父類名為必選參數(shù)。

implements 接口列表:可選參數(shù),用于指定該類實(shí)現(xiàn)的是哪些接口。當(dāng)使用implements關(guān)鍵字時(shí),接口列表為必選參數(shù)。當(dāng)接口列表中存在多個(gè)接口名時(shí),各個(gè)接口名之間使用逗號(hào)分隔。

在類中實(shí)現(xiàn)接口時(shí),方法的名字、返回值類型、參數(shù)的個(gè)數(shù)及類型必須與接口中的完全一致,并且必須實(shí)現(xiàn)接口中的所有方法。例如,編寫一個(gè)名稱為Cire的類,該類實(shí)現(xiàn)5.7.1節(jié)中定義的接口Calculate,具體代碼如下:

1 public class Cire implements CalInterface

2 {

3 ? ? public float getArea(float r)

4 ? ? {

5 ? ? ? ? float area=PI*r*r;//計(jì)算圓面積并賦值給變量area

6 ? ? ? ? return area;//返回計(jì)算后的圓面積

7 ? ? }

8 ? ? public float getCircumference(float r)

9 ? ? {

10 ? ? ? ? float circumference=2*PI*r; ? ? ?//計(jì)算圓周長(zhǎng)并賦值給變量circumference

11 ? ? ? ? return circumference; ? ? ? ? ? //返回計(jì)算后的圓周長(zhǎng)

12 ? ? }

13 ? ? public static void main(String[] args)

14 ? ? {

15 ? ? ? ? Cire c = new Cire();

16 ? ? ? ? float f = c.getArea(2.0f);

17 ? ? ? ? System.out.println(Float.toString(f));

18 ? ? }

19 }

在類的繼承中,只能做單重繼承,而實(shí)現(xiàn)接口時(shí),一次則可以實(shí)現(xiàn)多個(gè)接口,每個(gè)接口間使用逗號(hào)“,”分隔。這時(shí)就可能出現(xiàn)常量或方法名沖突的情況,解決該問題時(shí),如果常量沖突,則需要明確指定常量的接口,這可以通過“接口名.常量”實(shí)現(xiàn)。如果出現(xiàn)方法沖突時(shí),則只要實(shí)現(xiàn)一個(gè)方法就可以了。下面通過一個(gè)具體的實(shí)例詳細(xì)介紹以上問題的解決方法。

本文題目:java定義一個(gè)接口代碼 java編寫一個(gè)接口
網(wǎng)站地址:http://muchs.cn/article24/ddceoce.html

成都網(wǎng)站建設(shè)公司_創(chuàng)新互聯(lián),為您提供全網(wǎng)營(yíng)銷推廣、電子商務(wù)、虛擬主機(jī)網(wǎng)站內(nèi)鏈、搜索引擎優(yōu)化、網(wǎng)站收錄

廣告

聲明:本網(wǎng)站發(fā)布的內(nèi)容(圖片、視頻和文字)以用戶投稿、用戶轉(zhuǎn)載內(nèi)容為主,如果涉及侵權(quán)請(qǐng)盡快告知,我們將會(huì)在第一時(shí)間刪除。文章觀點(diǎn)不代表本網(wǎng)站立場(chǎng),如需處理請(qǐng)聯(lián)系客服。電話:028-86922220;郵箱:631063699@qq.com。內(nèi)容未經(jīng)允許不得轉(zhuǎn)載,或轉(zhuǎn)載時(shí)需注明來源: 創(chuàng)新互聯(lián)

成都做網(wǎng)站