《對(duì)象和類》PPT課件

《對(duì)象和類》PPT課件

ID:39491179

大?。?77.11 KB

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

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

《對(duì)象和類》PPT課件_第1頁(yè)
《對(duì)象和類》PPT課件_第2頁(yè)
《對(duì)象和類》PPT課件_第3頁(yè)
《對(duì)象和類》PPT課件_第4頁(yè)
《對(duì)象和類》PPT課件_第5頁(yè)
資源描述:

《《對(duì)象和類》PPT課件》由會(huì)員上傳分享,免費(fèi)在線閱讀,更多相關(guān)內(nèi)容在教育資源-天天文庫(kù)。

1、8.1引言8.2定義對(duì)象的類8.4構(gòu)造方法8.5通過引用變量訪問對(duì)象8.6使用java中的類8.7靜態(tài)變量、常量、靜態(tài)方法8.8可見性修飾符8.9數(shù)據(jù)域封裝補(bǔ)充:不可變對(duì)象和類8.10對(duì)象引用作為參數(shù)補(bǔ)充:變量的作用域補(bǔ)充:關(guān)鍵字this8.11對(duì)象數(shù)組第8章對(duì)象和類8.1引言面向?qū)ο蟮某绦蛟O(shè)計(jì)與結(jié)構(gòu)化程序設(shè)計(jì)方法相比,OO更符合人類認(rèn)識(shí)現(xiàn)實(shí)世界的思維方式已成為程序設(shè)計(jì)的主流方向涉及的主要概念抽象封裝繼承多態(tài)第11章第8,10章所有對(duì)象的抽象,是類。類是模板。對(duì)象是類的具體實(shí)例(instance,實(shí)例化instant

2、iation)實(shí)例變量實(shí)例方法8.2定義對(duì)象的類對(duì)象的狀態(tài)status數(shù)據(jù)域?qū)傩猿蓡T變量對(duì)象的行為behavior成員方法(函數(shù))OOP8.3舉例:定義類和創(chuàng)建對(duì)象classCircle{privatedoubler;publicvoidsetR(doublex){r=x;}publicdoublegetArea(){returnMath.PI*r*r;}}classTestCircle{publicstaticvoidmain(String[]s){Circlec1=newCircle();Circlec2=new

3、Circle();c1.setR(1);c2.setR(2);System.out.println(c1.getArea());System.out.println(c2.getArea());}}8.4使用構(gòu)造方法構(gòu)造對(duì)象構(gòu)造方法一種和類同名的特殊方法用來初始化對(duì)象Java中的每個(gè)類都有構(gòu)造方法,用來初始化該類的一個(gè)新的對(duì)象沒有定義構(gòu)造方法的類,系統(tǒng)自動(dòng)提供默認(rèn)的構(gòu)造方法構(gòu)造方法的特點(diǎn)方法名與類名相同沒有返回類型,修飾符void也不能有。如果有,編譯器認(rèn)為它是普通方法,而非構(gòu)造方法通常被聲明為公有的(public)

4、可以有任意多個(gè)參數(shù)主要作用是完成對(duì)象的初始化工作不能在程序中顯式的調(diào)用在生成一個(gè)對(duì)象時(shí),系統(tǒng)會(huì)自動(dòng)調(diào)用該類的構(gòu)造方法為新生成的對(duì)象進(jìn)行初始化沒有定義構(gòu)造方法的類,系統(tǒng)自動(dòng)提供默認(rèn)的構(gòu)造方法系統(tǒng)提供的默認(rèn)構(gòu)造方法如果在類的聲明中沒有聲明任何構(gòu)造方法,則Java編譯器會(huì)提供一個(gè)默認(rèn)的構(gòu)造方法默認(rèn)的構(gòu)造方法沒有參數(shù),其方法體為空使用默認(rèn)的構(gòu)造方法初始化對(duì)象時(shí),如果在類聲明中沒有給實(shí)例變量賦初值,則對(duì)象的屬性值為零或空聲明一個(gè)銀行帳號(hào)類及測(cè)試代碼classBankAccount{StringownerName;intacco

5、untNumber=2012;floatbalance;}publicclassBankTester{publicstaticvoidmain(Stringargs[]){BankAccountmyAccount=newBankAccount();System.out.println("ownerName="+myAccount.ownerName);System.out.println("accountNumber="+myAccount.accountNumber);System.out.println("bal

6、ance="+myAccount.balance);}}運(yùn)行結(jié)果ownerName=nullaccountNumber=2012balance=0.0自定義構(gòu)造方法與方法重載可在生成對(duì)象時(shí)給構(gòu)造方法傳送初始值,使用希望的值給對(duì)象初始化構(gòu)造方法可以被重載,構(gòu)造方法的重載和方法的重載一致一個(gè)類中有兩個(gè)及以上同名的方法,但參數(shù)表不同,這種情況就被稱為方法重載。在方法調(diào)用時(shí),Java可以通過參數(shù)列表的不同來辨別應(yīng)調(diào)用哪一個(gè)方法ClassCircle{doubleradius=1.0;Circle(){}Circle(doub

7、lenewRadius){radius=newRadius;}doublegetArea(){returnradius*radius*Math.PI}}publicclassTest{publicstaticvoidmain(){Circlec=newCircle();Circled=newCircle(2.0);……}}自定義無參的構(gòu)造方法無參的構(gòu)造方法對(duì)其子類的聲明很重要。如果在一個(gè)類中不存在無參的構(gòu)造方法,則要求其子類聲明時(shí)必須聲明構(gòu)造方法,否則在子類對(duì)象的初始化時(shí)會(huì)出錯(cuò)在聲明構(gòu)造方法時(shí),好的聲明習(xí)慣是不聲明任

8、何構(gòu)造方法如果聲明,至少聲明一個(gè)無參構(gòu)造方法構(gòu)建一個(gè)Bush類,有兩個(gè)有參數(shù)的構(gòu)造方法classBush{Bush(inti){}Bush(doubled){}}如果寫:newBush();編譯器將要告訴你找不到對(duì)應(yīng)的構(gòu)造方法說明用戶在進(jìn)行類聲明時(shí),如果沒有聲明任何構(gòu)造方法,系統(tǒng)會(huì)賦給此類一個(gè)默認(rèn)(無參)的構(gòu)造方法。但是,只要用戶聲明了構(gòu)造方法

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

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

當(dāng)前文檔最多預(yù)覽五頁(yè),下載文檔查看全文
溫馨提示:
1. 部分包含數(shù)學(xué)公式或PPT動(dòng)畫的文件,查看預(yù)覽時(shí)可能會(huì)顯示錯(cuò)亂或異常,文件下載后無此問題,請(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)等原因無法下載或下載錯(cuò)誤,付費(fèi)完成后未能成功下載的用戶請(qǐng)聯(lián)系客服處理。