成員變量、實(shí)例變量、類(lèi)變量、成員方法、實(shí)例方法、類(lèi)方法的區(qū)別

成員變量、實(shí)例變量、類(lèi)變量、成員方法、實(shí)例方法、類(lèi)方法的區(qū)別

ID:5840543

大?。?6.00 KB

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

時(shí)間:2017-12-25

成員變量、實(shí)例變量、類(lèi)變量、成員方法、實(shí)例方法、類(lèi)方法的區(qū)別_第1頁(yè)
成員變量、實(shí)例變量、類(lèi)變量、成員方法、實(shí)例方法、類(lèi)方法的區(qū)別_第2頁(yè)
資源描述:

《成員變量、實(shí)例變量、類(lèi)變量、成員方法、實(shí)例方法、類(lèi)方法的區(qū)別》由會(huì)員上傳分享,免費(fèi)在線閱讀,更多相關(guān)內(nèi)容在行業(yè)資料-天天文庫(kù)

1、成員變量、實(shí)例變量、類(lèi)變量、成員方法、實(shí)例方法、類(lèi)方法的區(qū)別2010-04-1115:18簡(jiǎn)單來(lái)說(shuō):類(lèi)體的定義包括成員變量的定義和方法的定義。1、成員變量包括實(shí)例變量和類(lèi)變量;而成員方法包括實(shí)例方法、類(lèi)方法,當(dāng)然還有一種特殊的構(gòu)造方法。2、類(lèi)變量、類(lèi)方法就是類(lèi)中的變量、方法,必須是靜態(tài)的,要加static;故其又稱(chēng)靜態(tài)變量、靜態(tài)方法。3、成員變量、成員方法是對(duì)象或?qū)嵗械淖兞?、方法,不加static;類(lèi)變量:靜態(tài)域,靜態(tài)字段,或叫靜態(tài)變量,它屬于該類(lèi)所有實(shí)例共有的屬性,在內(nèi)存中只有一個(gè)地方存儲(chǔ)這個(gè)變量。而且所有的實(shí)例都可以修改這個(gè)類(lèi)變量的值(前提是這個(gè)類(lèi)變量沒(méi)有被final修

2、飾,否則是常量了),而且訪問(wèn)類(lèi)變量的時(shí)候不用實(shí)例,直接用類(lèi)就可以了。類(lèi)方法:和類(lèi)變量一樣,可以不用實(shí)例,直接用類(lèi)就可以調(diào)用類(lèi)方法。實(shí)例變量:實(shí)例域,實(shí)例字段,或叫成員變量。實(shí)例方法:或叫成員方法,必須先有實(shí)例,然后才能通過(guò)實(shí)例調(diào)用該實(shí)例方法。使用方法:類(lèi)方法可以直接調(diào)用類(lèi)變量和類(lèi)方法??????????????類(lèi)方法不可以直接調(diào)用實(shí)例變量和實(shí)例方法???????????????類(lèi)方法中沒(méi)有this,因?yàn)闆](méi)有實(shí)例,this不知道調(diào)用哪個(gè)實(shí)例??????????????類(lèi)方法可以從類(lèi)里面直接訪問(wèn)類(lèi)成員??????????????實(shí)例方法可以調(diào)用類(lèi)方法,訪問(wèn)類(lèi)變量,但是不提倡這樣做

3、,會(huì)把類(lèi)方法和類(lèi)變量混淆成實(shí)例方法和實(shí)例變量程序?qū)嵗篶lassAnIntegerNamedX{???intx;??????//這個(gè)是成員變量?????publicintx(){????//成員方法???????????returnx;??}???publicvoidsetX(intnewX){???????//成員方法???????????x=newX;???}}publicclassPractice{??publicstaticvoidmain(Stringargs[]){?????????AnIntegerNamedXmyX=newAnIntegerNamedX();?

4、????????AnIntegerNamedXanotherX=newAnIntegerNamedX();??????????myX.setX(1);???????????anotherX.x=2;?????????System.out.println("myX.x="+myX.x());????????System.out.println("anotherX.x="+anotherX.x());??}}2:classAnIntegerNamedX{??staticintx;???????????//這里寫(xiě)成static,結(jié)果就變成全是2了,因?yàn)轭?lèi)變量是被實(shí)例所共享的,包括m

5、yX和anotherX?????????????????????????????????調(diào)用anotherX時(shí)所有的所有實(shí)例都改變了。publicintx(){????????returnx;}publicvoidsetX(intnewX){??????x=newX;}}publicclassPractice{????publicstaticvoidmain(Stringargs[]){??????????AnIntegerNamedXmyX=newAnIntegerNamedX();???????????AnIntegerNamedXanotherX=newAnIntege

6、rNamedX();???????????myX.setX(1);????????????anotherX.x=2;?????????//這里把X的值改成2,所有實(shí)例的X都是2了,因?yàn)轭?lèi)變量是被所有實(shí)例共享的,任何實(shí)?????????????????????????????????????????????例都可以對(duì)類(lèi)變量做最終的修改????????????System.out.println("myX.x="+myX.x());????????????System.out.println("anotherX.x="+anotherX.x());?????}}???????3:

7、同樣的,當(dāng)把那兩個(gè)方法都加上static變成類(lèi)方法的時(shí)候,會(huì)提示錯(cuò)誤讓你把X變成靜態(tài),是應(yīng)為類(lèi)方法不能直接訪問(wèn)實(shí)例變量!

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

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

當(dāng)前文檔最多預(yù)覽五頁(yè),下載文檔查看全文
溫馨提示:
1. 部分包含數(shù)學(xué)公式或PPT動(dòng)畫(huà)的文件,查看預(yù)覽時(shí)可能會(huì)顯示錯(cuò)亂或異常,文件下載后無(wú)此問(wèn)題,請(qǐng)放心下載。
2. 本文檔由用戶(hù)上傳,版權(quán)歸屬用戶(hù),天天文庫(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)完成后未能成功下載的用戶(hù)請(qǐng)聯(lián)系客服處理。