版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡介
1、達(dá)內(nèi)java學(xué)習(xí)筆記1JAVAJAVA的面向?qū)ο缶幊痰拿嫦驅(qū)ο缶幊陶n堂筆記課堂筆記面向?qū)ο笾饕槍γ嫦蜻^程。面向?qū)ο笾饕槍γ嫦蜻^程。面向過程的基本單元是函數(shù)。面向過程的基本單元是函數(shù)。什么是對象:什么是對象:EVERYTHINGISOBJECT(萬物皆對象)(萬物皆對象)所有的事物都有兩個(gè)方面:所有的事物都有兩個(gè)方面:有什么(屬性):用來描述對象。有什么(屬性):用來描述對象。能夠做什么(方法):告訴外界對象有那些功能。能夠做什么(方
2、法):告訴外界對象有那些功能。后者以前者為基礎(chǔ)。后者以前者為基礎(chǔ)。大的對象的屬性也可以是一個(gè)對象。大的對象的屬性也可以是一個(gè)對象。為什么要使用面向?qū)ο螅簽槭裁匆褂妹嫦驅(qū)ο螅菏紫龋嫦驅(qū)ο蠓先祟惪创挛锏囊话阋?guī)律。首先,面向?qū)ο蠓先祟惪创挛锏囊话阋?guī)律。對象的方法的實(shí)現(xiàn)細(xì)節(jié)是屏蔽的,只有對象方法的實(shí)現(xiàn)者了解細(xì)節(jié)。對象的方法的實(shí)現(xiàn)細(xì)節(jié)是屏蔽的,只有對象方法的實(shí)現(xiàn)者了解細(xì)節(jié)。方法的定義非常重要。方法有參數(shù),也可能有返回值。方法的定義非常
3、重要。方法有參數(shù),也可能有返回值。注意區(qū)分:對象(本身)注意區(qū)分:對象(本身)、對象的實(shí)現(xiàn)者、對象的調(diào)用者。、對象的實(shí)現(xiàn)者、對象的調(diào)用者。分析對象主要從方法開始。分析對象主要從方法開始。我們通過類來看待對象,類是對象的抽象。我們通過類來看待對象,類是對象的抽象。其次,采用面向?qū)ο蠓椒梢允瓜到y(tǒng)各部分各司其職、各盡所能。其次,采用面向?qū)ο蠓椒梢允瓜到y(tǒng)各部分各司其職、各盡所能。對象之間的耦合性一定要低(比如不同硬盤和不同主板之間的關(guān)系)對
4、象之間的耦合性一定要低(比如不同硬盤和不同主板之間的關(guān)系)。這樣才能使每個(gè)對象本身做成最。這樣才能使每個(gè)對象本身做成最好的。好的。對于對象的要求:高內(nèi)聚、低耦合,這樣容易拼裝成為一個(gè)系統(tǒng)。對于對象的要求:高內(nèi)聚、低耦合,這樣容易拼裝成為一個(gè)系統(tǒng)。實(shí)現(xiàn)高內(nèi)聚就是要最大限度低提高復(fù)用性(復(fù)用性好是因?yàn)楦邇?nèi)聚)實(shí)現(xiàn)高內(nèi)聚就是要最大限度低提高復(fù)用性(復(fù)用性好是因?yàn)楦邇?nèi)聚)。可復(fù)用性是可復(fù)用性是OOP的基礎(chǔ)。的基礎(chǔ)。比較面向過程的思想和面向?qū)ο蟮?/p>
5、思想:比較面向過程的思想和面向?qū)ο蟮乃枷耄好嫦蜻^程的思想:由過程、步驟、函數(shù)組成,以過程為核心;面向過程的思想:由過程、步驟、函數(shù)組成,以過程為核心;面向?qū)ο蟮乃枷耄阂詫ο鬄橹行模乳_發(fā)類,得到對象,通過對象之間相互通信實(shí)現(xiàn)功能。面向?qū)ο蟮乃枷耄阂詫ο鬄橹行?,先開發(fā)類,得到對象,通過對象之間相互通信實(shí)現(xiàn)功能。面向過程是先有算法,后有數(shù)據(jù)結(jié)構(gòu)。面向過程是先有算法,后有數(shù)據(jù)結(jié)構(gòu)。面向?qū)ο笫窍扔袛?shù)據(jù)結(jié)構(gòu),然后再有算法。面向?qū)ο笫窍扔袛?shù)據(jù)結(jié)構(gòu),
6、然后再有算法。在用面向?qū)ο笏枷腴_發(fā)的過程中,可以復(fù)用對象就進(jìn)行復(fù)用,如無法進(jìn)行復(fù)用則開發(fā)新的對象。在用面向?qū)ο笏枷腴_發(fā)的過程中,可以復(fù)用對象就進(jìn)行復(fù)用,如無法進(jìn)行復(fù)用則開發(fā)新的對象。開發(fā)過程是用對個(gè)簡單的對象的多個(gè)簡單的方法,來實(shí)現(xiàn)復(fù)雜的功能開發(fā)過程是用對個(gè)簡單的對象的多個(gè)簡單的方法,來實(shí)現(xiàn)復(fù)雜的功能。從語法上來看,一個(gè)類是一個(gè)新的數(shù)據(jù)類型。從語法上來看,一個(gè)類是一個(gè)新的數(shù)據(jù)類型。在面向?qū)ο缶幊讨?,除了簡單?shù)據(jù)類型,就是對象類型。在面向
7、對象編程中,除了簡單數(shù)據(jù)類型,就是對象類型。定義類的格式:定義類的格式:classStudent代碼代碼注意類名中單詞的首字母大寫。注意類名中單詞的首字母大寫。實(shí)例變量:定義在類中但在任何方法之外。實(shí)例變量:定義在類中但在任何方法之外。(New出來的均有初值)出來的均有初值)誠信、創(chuàng)新、開放、合作誠信、創(chuàng)新、開放、合作達(dá)內(nèi)java學(xué)習(xí)筆記3Overloading在一個(gè)類中可以定義多個(gè)同名方法,各個(gè)方法的在一個(gè)類中可以定義多個(gè)同名方法,各
8、個(gè)方法的參數(shù)表參數(shù)表一定不同。但修飾詞可能相同,一定不同。但修飾詞可能相同,返回值也可能相同。返回值也可能相同。在程序的編譯過程中根據(jù)變量類型來找相應(yīng)的方法。因此也有人認(rèn)為在程序的編譯過程中根據(jù)變量類型來找相應(yīng)的方法。因此也有人認(rèn)為overloading是編譯時(shí)的多態(tài),是編譯時(shí)的多態(tài),以后我們還會(huì)學(xué)到運(yùn)行時(shí)多態(tài)。以后我們還會(huì)學(xué)到運(yùn)行時(shí)多態(tài)。為什么會(huì)存在為什么會(huì)存在overloading技術(shù)呢?作為應(yīng)對方法的細(xì)節(jié)。技術(shù)呢?作為應(yīng)對方法的細(xì)
9、節(jié)。利用類型的差異來影響對方法的調(diào)用。利用類型的差異來影響對方法的調(diào)用。吃()可以分為吃肉,吃菜,吃藥,在一個(gè)類中可以定義多個(gè)吃方法。吃()可以分為吃肉,吃菜,吃藥,在一個(gè)類中可以定義多個(gè)吃方法。構(gòu)造方法也可以實(shí)現(xiàn)構(gòu)造方法也可以實(shí)現(xiàn)overloading。例:。例:publicvoidteach()publicvoidteach(inta)publicvoidteach(Stringa)為三種不同的方法。為三種不同的方法。Overloa
10、ding方法是從低向高轉(zhuǎn)。方法是從低向高轉(zhuǎn)。Byte—sht—float—int—long—double。在構(gòu)造方法中,在構(gòu)造方法中,this表示本類的其他構(gòu)造方法:表示本類的其他構(gòu)造方法:student()student(stringn)this()表示調(diào)用表示調(diào)用student()如果調(diào)用如果調(diào)用student(inta)則為則為this(inta)。特別注意特別注意:用:用this調(diào)用其他構(gòu)造方法時(shí),調(diào)用其他構(gòu)造方法時(shí),this必
11、須為第一條語句,然后才是其他語句。必須為第一條語句,然后才是其他語句。This表示當(dāng)前對象。表示當(dāng)前對象。PublicvoidprintNum()Intnumber=40;System.out.println(this.number)此時(shí)打印的是實(shí)例變量,而非局部變量,即定義在類中而非方法中的變量。此時(shí)打印的是實(shí)例變量,而非局部變量,即定義在類中而非方法中的變量。This.number表示實(shí)例變量。表示實(shí)例變量。誰調(diào)用誰調(diào)用this.n
12、umber那么誰即為當(dāng)前那么誰即為當(dāng)前(this)對象的對象的number方法。方法。封裝:使對象的屬性盡可能私有,對象的方法盡可能的公開。用封裝:使對象的屬性盡可能私有,對象的方法盡可能的公開。用private表示此成員屬性為該類的私有表示此成員屬性為該類的私有屬性。屬性。Public表示該屬性(方法)公開;表示該屬性(方法)公開;Private表示該屬性(方法)為只有本類內(nèi)部可以訪問(類內(nèi)部可見)表示該屬性(方法)為只有本類內(nèi)部可以
13、訪問(類內(nèi)部可見)。(想用(想用private還要用還要用set和get方法供其他方法調(diào)用,這樣可以保證對屬性的訪問方式統(tǒng)一,并且便于方法供其他方法調(diào)用,這樣可以保證對屬性的訪問方式統(tǒng)一,并且便于維護(hù)訪問權(quán)限以及屬性數(shù)據(jù)合法性)維護(hù)訪問權(quán)限以及屬性數(shù)據(jù)合法性)如果沒有特殊情況,屬性一定私有,方法該公開的公開。如果沒有特殊情況,屬性一定私有,方法該公開的公開。如果不指明誰調(diào)用方法,則默認(rèn)為如果不指明誰調(diào)用方法,則默認(rèn)為this。區(qū)分實(shí)例變
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 眾賞文庫僅提供信息存儲(chǔ)空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負(fù)責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- java學(xué)習(xí)筆記
- java學(xué)習(xí)筆記
- java基礎(chǔ)知識(shí)大全(必看經(jīng)典)
- java相關(guān)課程系列筆記之一java學(xué)習(xí)筆記
- java學(xué)習(xí)筆記整理齊全
- java學(xué)習(xí)筆記整理齊全
- 經(jīng)典vlan學(xué)習(xí)筆記
- java學(xué)習(xí)筆記課后選擇答案整理
- java學(xué)習(xí)筆記+程序員生涯
- [學(xué)習(xí)]法律人必看的十本經(jīng)典著作
- java筆記整理
- java基礎(chǔ)筆記
- 必看經(jīng)典電影
- java無錫培訓(xùn)筆記--學(xué)習(xí)當(dāng)中容易搞錯(cuò)的地方
- java se筆記(全)
- java面試筆記
- java復(fù)習(xí)筆記總結(jié)
- 周天教育講座經(jīng)典必看
- 學(xué)生必看有關(guān)英語學(xué)習(xí)的十句經(jīng)典名言
- 人生必看成功經(jīng)典
評論
0/150
提交評論