java抽象類與接口

java抽象類與接口

ID:36203823

大?。?08.00 KB

頁數(shù):22頁

時間:2019-05-07

java抽象類與接口_第1頁
java抽象類與接口_第2頁
java抽象類與接口_第3頁
java抽象類與接口_第4頁
java抽象類與接口_第5頁
資源描述:

《java抽象類與接口》由會員上傳分享,免費在線閱讀,更多相關(guān)內(nèi)容在教育資源-天天文庫

1、0抽象類與接口1本節(jié)學(xué)習目標:什么是抽象類?如何定義抽象類?什么是接口?JAVA中為什么要引入接口?如何實現(xiàn)接口?2一、抽象類(abstractclass)抽象類一般沒有足夠的信息來描述一個具體的對象,抽象類只用于繼承,不能用于創(chuàng)建對象。一個抽象類一般包括一個或多個抽象方法(只有方法說明,沒有方法體)。抽象類的子類必須實現(xiàn)其父類定義的每一個抽象方法,若沒有實現(xiàn)父類的所有抽象方法,則該子類也應(yīng)該定義為抽象類.31、抽象類的實現(xiàn)抽象類abstract修飾,其格式是:abstractclass類名{類成員定義}抽象類也可以包含非抽象的方法。繼

2、承抽象類的非抽象子類必須覆蓋父類中定義的抽象方法。42、抽象方法(abstractmethod)抽象方法用abstract修飾,它沒有方法體。抽象方法的格式是:abstract返回類型方法名([參數(shù)]);抽象方法只能出現(xiàn)在抽象類中。含有抽象方法的類必須定義成抽象類。5幾點注意事項:(1)構(gòu)造方法不能定義為抽象方法。(2)最終方法不能說明為抽象方法。(3)static和private修飾符不能用于抽象方法。舉例6求常見平面圖形(如三角形、圓、矩形和正方形等)的面積。利用抽象類,編寫程序?qū)崿F(xiàn)該功能。技術(shù)分析:7各種平面圖形都可以求出其面積,

3、但不同的形狀求面積的方法不同,因此可以定義一個平面圖形形狀類Shape。Shape類中有一個求面積的抽象方法(area),只所以定義為抽象方法是因為不同的平面圖形求法不同。圓(Circle)、矩形(Rectangle)和三角形(Triangle)是不同的形狀,它們都是Shape的子類,而正方形(Square)是矩形(Rectangle)中的一種特殊類型,因此正方形是矩形的子類,如下圖所示。抽象類的類名在類圖中要用斜體表示,以區(qū)別于普通的類。8圖6-5幾何形狀的類層次結(jié)構(gòu)ShapeCircleRectangleTriangleSquare

4、9作業(yè):電在傳輸上都會有損耗,假如計算電費時區(qū)分冬季和夏季用電情況,冬季在用電原有讀數(shù)上加上20千瓦小時作為用電損耗,而夏季沒有此損耗問題。電費是每千瓦小時電0.49元,假定用電度數(shù)為125千瓦小時,利用抽象類,分別計算出冬季和夏季相應(yīng)的電費。說明10抽象類中可以包含非抽象的方法。若類中包含了抽象方法,則該類必須要定義為抽象類。3抽象類不能用來實例化對象。一般用于繼承。11二、接口(interface)Java為了免去了C++隨著多繼承所衍生的復(fù)雜問題的Bug,使用接口機制來解決多重繼承的問題。再者,在實際軟件開發(fā)中,多個不相干的類如果

5、存在相同的屬性和類似功能的方法,就可以將這些屬性和方法單獨組織起來,定義成一個單獨的程序模塊,這個模塊可以使用接口來定義。另外,接口中只定義了人們關(guān)心的功能,并不考慮這些功能是如何實現(xiàn)的以及哪些類要實現(xiàn)這些功能,在實際軟件開發(fā)中,假如你是一個項目經(jīng)理,需要管理多個開發(fā)人員,如果你希望開發(fā)的某些類要具有某種功能,最簡單的做法就是你定義一個接口,然后指示開發(fā)人員要在設(shè)計類時實現(xiàn)這個接口。12(1)通過接口可以實現(xiàn)不相干類的相同行為而不需考慮這些類之間的層次關(guān)系。(2)通過接口可以實現(xiàn)多繼承機制。(3)通過接口可以了解對象的交互界面而不需了解

6、對象所對應(yīng)的類。1、接口的功能13[public]interface接口名稱{//接口體程序}接口是一系列沒有實現(xiàn)的方法和常量的組合,是個功能模塊。接口隱含修飾符為abstract沒有public的接口,其訪問將局限于該類所屬的包。接口繼承通過關(guān)鍵字extends來實現(xiàn),其語法與類繼承相同,而且一個接口可以繼承多個接口。在類的繼承中,所有的類,其超類均為Object,而接口沒有所謂的超接口。2、接口的定義14publicinterfaceInterfaceName{finalStringname="Name";finalStringse

7、x="male";…voidaInterfaceExample(parameterList);}接口聲明接口體常量定義方法聲明■所有定義在接口中的方法隱含為public和abstract?!鏊卸x在接口中的常量可以是public、static和final。定義在接口中的成員聲明不允許使用某些聲明修飾語,比如private和protected修飾語。154.接口的實現(xiàn)class類名implements接口名1,接口名2…一個類可以使用implements實現(xiàn)多個接口,。從而實現(xiàn)多繼承的機制。實現(xiàn)接口的類必須實現(xiàn)接口中的所有方法。否則為抽

8、象類。在類中實現(xiàn)接口中定義的方法時,不能比接口中定義的方法有更低的訪問權(quán)限。因此,被實現(xiàn)的接口方法必須用public修飾。16publicclassInterfaceExampleimplementsRun

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

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

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