java中的類與接口

java中的類與接口

ID:36203717

大?。?81.81 KB

頁數(shù):39頁

時間:2019-05-07

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

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

1、第三章Java中的類與接口教授:郭磊【本章導(dǎo)讀】Java語言其中一個突出特點就是面向?qū)ο?。所謂面向?qū)ο蟮姆椒▽W(xué),就是使我們分析、設(shè)計和實現(xiàn)一個系統(tǒng)的方法盡可能地接近我們認識一個系統(tǒng)的方法。包括:面向?qū)ο蟮姆治觯∣OA,Object-OrientedAnalysis),面向?qū)ο蟮脑O(shè)計(OOD,Object-OrientedDesign),面向?qū)ο蟮某绦蛟O(shè)計(OOP,Object-OrientedProgram)。本章主要介紹面向?qū)ο蟮幕靖拍?,包括類與對象、抽象類、內(nèi)部類、匿名類、接口和包等。目的是為以后的Jav

2、a面向?qū)ο蟮木幊檀蚝没A(chǔ)?!颈菊乱c】類與對象抽象類內(nèi)部類匿名類接口包3.1類與對象3.1.1類的聲明1、類的聲明格式:<類首聲明>{<類主體>}類首聲明定義類的名字、訪問權(quán)限以及與其它類的關(guān)系等。類主體定義類的成員,包括變量(數(shù)據(jù))和方法(行為)3.1類與對象3.1.2類首聲明:[<修飾符>]class<類名>[extends<超類名>][implements<接口名>]class:類定義的關(guān)鍵字;extends:表示類和另外一些類(超類)的繼承關(guān)系;implements:表示類實現(xiàn)了某些接口;修飾符:表示類

3、訪問權(quán)限(public)和類型說明(abstract、final);3.1類與對象3.1.3成員變量的聲明格式:[<修飾符>][static][final]<變量類型><變量名>static:表示是一個類成員變量(靜態(tài)變量);final:表示是一個常量;例:finaldoublePI=3.1415926;修飾符:表示變量的訪問權(quán)限(缺省訪問friendly、public、protected和private)作用域:整個類。同一類中的所有方法都可以對其訪問。并可簡單地通過名字來引用。(在方法體內(nèi)定義的變量是局部變

4、量,作用域只能在方法體內(nèi))3.1類與對象3.1.3成員方法方法的定義包括兩部分:方法聲明和方法體。一般格式為:方法聲明部分{方法體的內(nèi)容}3.1類與對象3.1.4對象的創(chuàng)建與引用1、對象的創(chuàng)建創(chuàng)建一個對象包括對象的聲明和為對象分配成員變量兩個步驟。(1)對象的聲明對象聲明的一般格式為:類的名字對象名字;如:RectrectangleOne;這里,Rect是一個類的名字,rectangleOne是我們聲明的對象的名字。用類聲明的數(shù)據(jù)稱為類類型變量,即對象,如上述Rect類聲明的對象rectangleOne。3.1

5、類與對象1、對象的創(chuàng)建(2)為聲明的對象分配成員變量為聲明的對象分配成員變量,即是給變量分配內(nèi)存空間。使用new運算符和類的構(gòu)造方法為聲明的對象分配成員變量,如果類中沒有構(gòu)造方法,系統(tǒng)會調(diào)用默認的構(gòu)造方法(默認的構(gòu)造方法是無參數(shù)的,你一定還記得構(gòu)造方法的名字必須和類名相同這一規(guī)定),上述的Rect類提供了2個構(gòu)造方法,下面都是合法的創(chuàng)建對象的語句:rectangleOne=newRect();3.1類與對象2、對象的引用我們已經(jīng)知道,當(dāng)用類創(chuàng)建一個對象時,成員變量被分配內(nèi)存空間,這些內(nèi)存空間稱做該對象的實體或變

6、量,而對象中存放著引用,以確保這些變量由該對象操作使用。因此,如果兩個對象有相同的引用,那么就具有同樣的實體。3.1類與對象3.1.5類的繼承與多態(tài)只支持單重繼承,不支持多重繼承,只能從一個父類繼承。必須從一個類繼承默認是從Object繼承如果類Sub是類Super的子類,則類Sub只繼承超類Super中非private的成員變量和方法。子類Sub中,包括兩部分的內(nèi)容:從超類Super中繼承下來的變量和方法,自己新增加的變量和方法。3.1類與對象3.1.5類的繼承與多態(tài)繼承的語法修飾符class類名extend

7、s父類{新屬性;新方法;重載的方法;覆蓋的方法;}3.1類與對象3.1.5類的繼承與多態(tài)多態(tài)是指同一個名字的若干個方法,有不同的實現(xiàn)(即方法體中的代碼不一樣)。通過方法的重載和覆蓋來實現(xiàn)多態(tài)性。方法的重載一個類中,有若干個方法名字相同,但方法的參數(shù)不同,稱為方法的重載。不正確的方法重載publicvoidfunover(inta,floatb)publicintfunover(inta,floatb)3.1類與對象3.1.5類的繼承與多態(tài)對于多態(tài),可以總結(jié)它為:(1)使用父類類型的引用指向子類的對象;(2)該引

8、用只能調(diào)用父類中定義的方法和變量;(3)如果子類中重寫了父類中的一個方法,那么在調(diào)用這個方法的時候,將會調(diào)用子類中的這個方法;(動態(tài)連接、動態(tài)調(diào)用)(4)變量不能被重寫(覆蓋),”重寫“的概念只針對方法,如果在子類中”重寫“了父類中的變量,那么在編譯時會報錯。3.2抽象類Java也可以創(chuàng)建專門的類用來當(dāng)作父類,這種類稱為抽象類(abstractclass)。即用關(guān)鍵字abstract修

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

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

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