《接口與實(shí)現(xiàn)》PPT課件

《接口與實(shí)現(xiàn)》PPT課件

ID:39526985

大?。?62.76 KB

頁(yè)數(shù):22頁(yè)

時(shí)間:2019-07-05

《接口與實(shí)現(xiàn)》PPT課件_第1頁(yè)
《接口與實(shí)現(xiàn)》PPT課件_第2頁(yè)
《接口與實(shí)現(xiàn)》PPT課件_第3頁(yè)
《接口與實(shí)現(xiàn)》PPT課件_第4頁(yè)
《接口與實(shí)現(xiàn)》PPT課件_第5頁(yè)
資源描述:

《《接口與實(shí)現(xiàn)》PPT課件》由會(huì)員上傳分享,免費(fèi)在線閱讀,更多相關(guān)內(nèi)容在教育資源-天天文庫(kù)。

1、第7章接口與實(shí)現(xiàn)Java不支持多繼承性,即一個(gè)類只能有一個(gè)父類。單繼承性使得Java簡(jiǎn)單,易于管理程序。為了克服單繼承的缺點(diǎn),Java使用了接口,一個(gè)類可以實(shí)現(xiàn)多個(gè)接口。使用關(guān)鍵字interface來(lái)定義一個(gè)接口。接口的定義和類的定義很相似,分為接口的聲明和接口體。9/8/20211信息學(xué)院7.1.1接口的聲明與使用(1)接口聲明接口通過(guò)使用關(guān)鍵字interface來(lái)聲明interface接口的名字(2)接口體接口體中包含常量定義和方法定義兩部分。接口體中只進(jìn)行方法的聲明,不許提供方法的實(shí)現(xiàn),所以方法的定義沒(méi)有方法體,且用分號(hào)結(jié)尾。7.1接口9/8/20212信息學(xué)院例:i

2、nterfaceRunner{publicstaticfinalintid=1;publicvoidstart();publicvoidrun();publicvoidstop();}7.1接口9/8/20213信息學(xué)院(3)接口的使用一個(gè)類通過(guò)使用關(guān)鍵字implements聲明自己使用一個(gè)或多個(gè)接口。如果使用多個(gè)接口,用逗號(hào)隔開(kāi)接口名。如:classAimplementsPrintable,AddableclassDogextendsAnimalimplementsEatable,Sleepable7.2實(shí)現(xiàn)接口9/8/20214信息學(xué)院7.2實(shí)現(xiàn)接口如果一個(gè)類使用了某個(gè)

3、接口,那么這個(gè)類必須實(shí)現(xiàn)該接口的所有方法,即為這些方法提供方法體。需要注意的是在類中實(shí)現(xiàn)接口的方法時(shí),方法的名字、返回類型、參數(shù)個(gè)數(shù)及類型必須與接口中的完全一致。特別要注意的是接口中的方法被默認(rèn)是public的,所以類在實(shí)現(xiàn)接口方法時(shí)一定要用public來(lái)修飾。9/8/20215信息學(xué)院如果接口的方法的返回類型不是void的,那么在類中實(shí)現(xiàn)該接口方法時(shí),方法體至少要有一個(gè)return語(yǔ)句。如果是void型,類體除了兩個(gè)大括號(hào)外,也可以沒(méi)有任何語(yǔ)句。7.2實(shí)現(xiàn)接口Java為我們提供的接口都在相應(yīng)的包中,通過(guò)引入包可以使用Java提供的接口。也可以自己定義接口,一個(gè)java源文

4、件就是由類和接口組成的。9/8/20216信息學(xué)院例:importjava.applet.*;importjava.awt.*;interfaceComputable{finalintMAX=100;voidspeak(Strings);intf(intx);floatg(floatx,floaty);}classChinaimplementsComputable{intxuehao;publicintf(intx){//不要忘記public關(guān)鍵字.intsum=0;for(inti=1;i<=x;i++){sum=sum+i;}returnsum;}9/8/20217信息

5、學(xué)院publicfloatg(floatx,floaty){return6;//至少有return語(yǔ)句.}publicvoidspeak(Strings){}}classJapanimplementsComputable{intxuehao;publicintf(intx){return68;}publicfloatg(floatx,floaty){returnx+y;}9/8/20218信息學(xué)院publicvoidspeak(Strings){}publicclassExample4_26extendsApplet{ChinaLi;JapanHenlu;publicvoi

6、dinit(){Li=newChina();Henlu=newJapan();Li.xuehao=991898;Henlu.xuehao=941448;}9/8/20219信息學(xué)院publicvoidpaint(Graphicsg){g.drawString("xuehao:"+Li.MAX+Li.xuehao+"從1到100求和"+Li.f(100),10,20);g.drawString("xuehao:"+Henlu.MAX+Henlu.xuehao+"加法"+Henlu.g(2.0f,3.0f),10,40);}}注:如果一個(gè)類聲明實(shí)現(xiàn)一個(gè)接口,但沒(méi)有實(shí)現(xiàn)接口中的所

7、有方法,那么這個(gè)類必須是abstract類。9/8/202110信息學(xué)院接口的語(yǔ)法規(guī)則很容易記住,但真正理解接口更重要。你可能注意到,在上述例子26中如果去掉接口,并把程序中的Li.MAX,Henlu.MAX去掉,上述程序的運(yùn)行沒(méi)有任何問(wèn)題。那為什么要用接口呢?7.3理解接口9/8/202111信息學(xué)院假如轎車、卡車、拖拉機(jī)、摩托車、客車都是機(jī)動(dòng)車的子類,其中機(jī)動(dòng)車是一個(gè)抽象類。如果機(jī)動(dòng)車中有一個(gè)抽象方法“收取費(fèi)用”,那么所有的子類都要實(shí)現(xiàn)這個(gè)方法,即給出方法體,產(chǎn)生各自的收費(fèi)行為。這顯然不符合人們的思維方法,因?yàn)?/p>

當(dāng)前文檔最多預(yù)覽五頁(yè),下載文檔查看全文

此文檔下載收益歸作者所有

當(dāng)前文檔最多預(yù)覽五頁(yè),下載文檔查看全文
溫馨提示:
1. 部分包含數(shù)學(xué)公式或PPT動(dòng)畫的文件,查看預(yù)覽時(shí)可能會(huì)顯示錯(cuò)亂或異常,文件下載后無(wú)此問(wèn)題,請(qǐng)放心下載。
2. 本文檔由用戶上傳,版權(quán)歸屬用戶,天天文庫(kù)負(fù)責(zé)整理代發(fā)布。如果您對(duì)本文檔版權(quán)有爭(zhēng)議請(qǐng)及時(shí)聯(lián)系客服。
3. 下載前請(qǐng)仔細(xì)閱讀文檔內(nèi)容,確認(rèn)文檔內(nèi)容符合您的需求后進(jìn)行下載,若出現(xiàn)內(nèi)容與標(biāo)題不符可向本站投訴處理。
4. 下載文檔時(shí)可能由于網(wǎng)絡(luò)波動(dòng)等原因無(wú)法下載或下載錯(cuò)誤,付費(fèi)完成后未能成功下載的用戶請(qǐng)聯(lián)系客服處理。