javase講義(基礎(chǔ)語(yǔ)法和面向?qū)ο笏枷?_第1頁(yè)
javase講義(基礎(chǔ)語(yǔ)法和面向?qū)ο笏枷?_第2頁(yè)
javase講義(基礎(chǔ)語(yǔ)法和面向?qū)ο笏枷?_第3頁(yè)
javase講義(基礎(chǔ)語(yǔ)法和面向?qū)ο笏枷?_第4頁(yè)
javase講義(基礎(chǔ)語(yǔ)法和面向?qū)ο笏枷?_第5頁(yè)
已閱讀5頁(yè),還剩15頁(yè)未讀, 繼續(xù)免費(fèi)閱讀

下載本文檔

版權(quán)說(shuō)明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)

文檔簡(jiǎn)介

1、1 Jdk安裝點(diǎn)擊jdk安裝包,一路next。配置環(huán)境路徑請(qǐng)查考環(huán)境統(tǒng)一配置文檔。Javac HelloJava.java編譯命令產(chǎn)生.class文件。Java HelloJava 執(zhí)行命令,計(jì)算機(jī)產(chǎn)生行為。2 Eclipse安裝解壓安裝包,直接使用exe文件3 標(biāo)識(shí)符和關(guān)鍵字 標(biāo)識(shí)符,所有你可以自己命名的地方都稱之為標(biāo)識(shí)符。標(biāo)識(shí)符只能由字母、數(shù)字、下劃線“_”、美元符號(hào)“$”組成。標(biāo)識(shí)符不能以數(shù)字開(kāi)頭。 java標(biāo)識(shí)符大小寫敏感。 關(guān)鍵字不能用于標(biāo)識(shí)符。4 數(shù)據(jù)類型 java的數(shù)據(jù)類型分為基本數(shù)據(jù)類型和引用數(shù)據(jù)類型?;緮?shù)據(jù)類型包括三類八種。理解引用數(shù)據(jù)類型需要先理解面向?qū)ο笏枷?。理解?shù)據(jù)類

2、型需要理解內(nèi)存。4.1 數(shù)值型數(shù)據(jù)數(shù)值型是非小數(shù)數(shù)據(jù)。Long類型常量需要以L結(jié)尾。4.2 浮點(diǎn)型數(shù)據(jù)小數(shù)數(shù)據(jù)就是java浮點(diǎn)型數(shù)據(jù)。浮點(diǎn)型數(shù)據(jù)以科學(xué)計(jì)數(shù)法的形式在內(nèi)存中記錄。Float常量需要以F結(jié)尾。4.3 字符型數(shù)據(jù)字符型數(shù)據(jù),字符數(shù)據(jù)常量以引起來(lái)。在計(jì)算機(jī)中以整型數(shù)據(jù)表示,以兩個(gè)字節(jié)來(lái)存儲(chǔ)。表示范圍為0-65536常用的字符集為utf-8。4.4 Boolean型數(shù)據(jù)boolean取值只能是true Or false。用來(lái)做邏輯判斷。5 數(shù)據(jù)類型轉(zhuǎn)化自動(dòng)類型轉(zhuǎn)化和強(qiáng)制類型轉(zhuǎn)化。小轉(zhuǎn)大自動(dòng)類型轉(zhuǎn)化,大轉(zhuǎn)小需要強(qiáng)制類型轉(zhuǎn)化。多類型運(yùn)算,自動(dòng)轉(zhuǎn)型為最大類型。Boolean類型不能參與轉(zhuǎn)型。6

3、 變量與常量變量對(duì)應(yīng)于計(jì)算機(jī)內(nèi)存空間,可以存任何符合該類型的數(shù)據(jù)。計(jì)算機(jī)內(nèi)存空間存的01碼表示的數(shù)值即為常量。變量聲明,變量如果只進(jìn)行了聲明,變量中是默認(rèn)值。變量分為局部變量和成員變量。7 Java運(yùn)算符7.1 賦值運(yùn)算符等式右邊的值賦給等式左邊,等式右邊可以是常量、變量或表達(dá)式。7.2 算數(shù)運(yùn)算符+、-、*、/、%/,除法如果參與運(yùn)算的都為整型數(shù)據(jù),就是整除。結(jié)果不會(huì)有小數(shù)。0不能做除數(shù)。%,取余數(shù)是求余運(yùn)算。7.3 自增自減+是自增運(yùn)算,+在前是先+再用,+在后是先用再+。-與之類似7.4 比較運(yùn)算符>、<、>=、<=、=、!=,判斷相等用=,判斷不等用!=,比較運(yùn)

4、算符的計(jì)算結(jié)果為boolean類型值。7.5 邏輯運(yùn)算符與(&&),或(|),非(!)。與,一假則假,全真才真;或,一真則真,全假才假;非,真假相對(duì)。與(&&),或(|)存在短路現(xiàn)象。7.6 三元運(yùn)算符a=b?a:b;與if、else相同。7.7 運(yùn)算符優(yōu)先級(jí)問(wèn)題使用括號(hào)解決,誰(shuí)死記硬背誰(shuí)sb8 Java執(zhí)行語(yǔ)句8.1 順序執(zhí)行語(yǔ)句Java語(yǔ)言默認(rèn)從上到下順序執(zhí)行。8.2 分支語(yǔ)句Ifelse語(yǔ)句常用。switch要注意擊穿問(wèn)題,要使用break,switch存在默認(rèn)執(zhí)行語(yǔ)句default。8.3 循環(huán)語(yǔ)句While語(yǔ)句,需要邏輯表達(dá)式,和結(jié)束循環(huán)的判斷條件。d

5、o-while語(yǔ)句,先執(zhí)行后判斷For循環(huán)是while的一種簡(jiǎn)寫。While能實(shí)現(xiàn),for也能實(shí)現(xiàn)。8.4 跳轉(zhuǎn)語(yǔ)句break,結(jié)束所有循環(huán);continue,結(jié)束單次循環(huán)。Return結(jié)合方法理解。通過(guò)兒歌50首和6道典型題消化知識(shí)。9 面向?qū)ο笏枷?.1 面向?qū)ο笏枷牒诵?高級(jí)語(yǔ)言在發(fā)展過(guò)程中遇到了代碼不可維護(hù)、代碼不可復(fù)用、程序設(shè)計(jì)復(fù)雜、程序開(kāi)發(fā)成本過(guò)高的問(wèn)題。由于面向過(guò)程語(yǔ)言只是符合人類語(yǔ)言習(xí)慣不符合人類思維習(xí)慣,所以發(fā)展出了更加符合人類思維習(xí)慣的面向?qū)ο笏枷搿?面向過(guò)程,專注于對(duì)具體問(wèn)題的分步解決,強(qiáng)調(diào)問(wèn)題的處理過(guò)程和數(shù)據(jù)的具體處理步驟。 面向?qū)ο螅M人類日常思維模式解決計(jì)算機(jī)中的

6、問(wèn)題。將處理過(guò)程和數(shù)據(jù)進(jìn)行封裝和屏蔽,從而達(dá)到復(fù)用的效果。 java中萬(wàn)事萬(wàn)物皆為對(duì)象,類和對(duì)象是java編程的核心。類可以看成是屬性和行為的抽象、封裝。必須先有概念才有實(shí)物,必須定義類才有對(duì)象,類是同一類型對(duì)象的模板。面向?qū)ο笳Z(yǔ)言,萬(wàn)事萬(wàn)物,皆為對(duì)象。面向?qū)ο笏季S,第一步、考慮有哪些類和哪些對(duì)象。第二步,考慮類中有哪些屬性和方法。第三步,考慮類與類之間的關(guān)系。 面向?qū)ο竽芴岣叽a的可重用性和可維護(hù)性并且降低程序設(shè)計(jì)復(fù)雜性,屬性和方法都可復(fù)用。9.2 Java概念的定義模式Java中通過(guò)類來(lái)表達(dá)概念,定義類的格式為:class person 屬性;方法; 如果類的訪問(wèn)權(quán)限為public,則類名

7、必須與文件名一致。屬性定義方式為:修飾符 數(shù)據(jù)類型 標(biāo)識(shí)符 = 值; 方法定義方式為:修飾符1、修飾符2 返回值類型 方法名稱 (形式參數(shù)列表) 返回值類型是數(shù)據(jù)類型和void。 方法名稱可以是任意合法標(biāo)識(shí)符。 方法體,行為具體步驟。9.3 基礎(chǔ)數(shù)據(jù)類型和引用數(shù)據(jù)類型基礎(chǔ)數(shù)據(jù)類型直接存儲(chǔ)數(shù)值,引用數(shù)據(jù)類型存儲(chǔ)的是對(duì)象在堆內(nèi)存中的地址碼,地址碼根據(jù)hash算法根據(jù)地址得到。9.4 局部變量和成員變量的區(qū)別局部變量就是方法體中和形參列表中定義的變量。成員變量就是描述類屬性的變量。9.5 變量的作用域局部變量會(huì)屏蔽成員變量。局部變量在哪個(gè)大括號(hào)里面定義的,作用域就只在該大括號(hào)里面。9.6 形式參數(shù)和

8、實(shí)際參數(shù)形式參數(shù),在方法被調(diào)用時(shí)告訴調(diào)用者需要傳入什么樣的參數(shù)。實(shí)際參數(shù),在方法調(diào)用時(shí)實(shí)際傳入的參數(shù)。返回值類型,事先約定的返回值的數(shù)據(jù)類型,如果沒(méi)有返回值,必須給出返回值類型void。返回值,方法執(zhí)行完畢后返回的真實(shí)數(shù)據(jù)。9.7 值傳遞和引用傳遞形參傳實(shí)參,值傳遞傳的是具體的值,引用傳遞傳遞的是指針(地址指針)。9.8 方法的尋址對(duì)象屬性是各有一份,對(duì)象方法是公用的,方法定義放在code代碼區(qū),通過(guò)方法指針找到。9.9 方法重載Java虛擬機(jī)唯一確定某個(gè)方法的原則:方法名相同,方法形參列表相同(形參個(gè)數(shù)相同,形參類型相同,形參順序相同)。方法重載的概念就是方法名相同,方法形參列表不同。Jav

9、a虛擬機(jī)無(wú)法根據(jù)方法返回值類型確定方法。9.10 構(gòu)造方法構(gòu)造方法的格式:修飾符 類名 (形式參數(shù)列表)構(gòu)造方法的作用為,根據(jù)類模板構(gòu)造對(duì)象實(shí)體,返回值一定是地址指針。構(gòu)造方法的方法體中一般進(jìn)行對(duì)象成員變量的初始化操作。構(gòu)造方法通過(guò)new關(guān)鍵字來(lái)調(diào)用。對(duì)象創(chuàng)建需要類模板。通過(guò)new類的構(gòu)造函數(shù)來(lái)構(gòu)造對(duì)象。其中修飾符包括private、protected、public。當(dāng)類中沒(méi)有明確指明類的構(gòu)造函數(shù)時(shí),會(huì)自動(dòng)指定一個(gè)空的構(gòu)造函數(shù),當(dāng)指定構(gòu)造函數(shù)后空的構(gòu)造函數(shù)將不存在。類的構(gòu)造函數(shù)可以重載。調(diào)用空的構(gòu)造函數(shù),對(duì)象的成員變量均為對(duì)應(yīng)數(shù)據(jù)類型的默認(rèn)值。9.11 Java對(duì)象內(nèi)存垃圾回收機(jī)制Java內(nèi)存

10、垃圾是自動(dòng)回收的。具有周期性,可能內(nèi)存釋放不夠及時(shí)。判斷某個(gè)內(nèi)存空間是否還有用的標(biāo)準(zhǔn)是,該內(nèi)存空間的地址指針是否還有人惦記。9.12 Java命名規(guī)范類名的首字母大寫,變量名和方法名的首字母小寫,遵守駝峰標(biāo)識(shí)命名法。標(biāo)識(shí)符一定要見(jiàn)名知意。方法最好使用動(dòng)賓結(jié)構(gòu)。9.13 Java對(duì)象資源的調(diào)用java成員變量調(diào)用形式,對(duì)象名.成員變量java方法調(diào)用形式,對(duì)象名.方法名(實(shí)際參數(shù)列表).為尋址操作符9.14 This關(guān)鍵字在類的方法定義中使用的this關(guān)鍵字代表使用該方法的當(dāng)前對(duì)象的引用。必須指出當(dāng)前使用方法的對(duì)象是當(dāng)前對(duì)象時(shí)要使用this。this可以處理方法中成員變量和參數(shù)重名的情況即thi

11、s用于消除局部變量屏蔽成員變量的現(xiàn)象。this可以看作是一個(gè)變量,它的值是當(dāng)前對(duì)象的引用。9.15 Static關(guān)鍵字Static修飾的變量是靜態(tài)變量,Static修飾的方法是靜態(tài)方法。靜態(tài)變量在類加載的過(guò)程中就會(huì)載入data內(nèi)存區(qū),并且地址指針由類記錄。靜態(tài)方法的方法指針也會(huì)由類記錄。當(dāng)然,對(duì)象也有靜態(tài)變量和靜態(tài)方法的指針。非靜態(tài)成員變量和成員方法類不能訪問(wèn),但是靜態(tài)成員變量和成員方法類和對(duì)象都能訪問(wèn)。 9.16 Package和import取包名的主要目的是為了區(qū)別重名類。package語(yǔ)句作為java源文件的第一條語(yǔ)句,指明該文件中定義的類所在的包。缺省該語(yǔ)句則為無(wú)名包。如果想將一個(gè)類放

12、入某個(gè)包中,在這個(gè)類源文件第一句話寫package。package語(yǔ)句中用“.”來(lái)指明包的層次,對(duì)應(yīng)于文件系統(tǒng)的目錄管理。 要訪問(wèn)類,必須寫全名或用import語(yǔ)句引入,位于同一個(gè)包中的類不需要引入。必須保證該類的class文件位于正確的目錄下。9.17 類與類的關(guān)系關(guān)聯(lián)關(guān)系,一個(gè)類別的對(duì)象行為需要另一個(gè)類別的對(duì)象作為原材料。聚合關(guān)系,A是B的一部分,整體和部分的關(guān)系,并且不可分割。組合關(guān)系,A是B的一部分,整體和部分的關(guān)系,并且可分割。繼承關(guān)系,A是B,B是父類A是子類。繼承的關(guān)鍵字是extends。java語(yǔ)言是單繼承。(例子5TestAnimal) 實(shí)現(xiàn)關(guān)系,抽象類或接口類和實(shí)現(xiàn)類之間的

13、關(guān)系。9.18 Super關(guān)鍵字Super是對(duì)父類的引用,在構(gòu)造子類對(duì)象的同時(shí),java vm 默認(rèn)調(diào)用父類的無(wú)參構(gòu)造方法。當(dāng)然在子類構(gòu)造方法中你也可以明確指定調(diào)用哪個(gè)父類的構(gòu)造方法。Super不僅可以用來(lái)調(diào)用父類的構(gòu)造方法,也可以調(diào)用父類的成員。9.19 繼承與方法重寫 定義類與類之間的繼承關(guān)系方式為:修飾符 class 類名 extends <superclass>子類也可以有自己特有的、區(qū)別于父類的屬性和行為。當(dāng)父類的定義的行為無(wú)法滿足子類行為需求的時(shí)候,子類可以重新定義該行為,稱為方法重寫。9.20 多態(tài)先從邏輯的角度理解,再?gòu)奈锢韺?shí)現(xiàn)的角度理解。多態(tài)產(chǎn)生的條件是,繼承、父

14、類引用指向子類對(duì)象、子類重寫父類的方法。多態(tài)就是動(dòng)態(tài)綁定,是指在執(zhí)行期間而不是編譯期間判斷引用對(duì)象的實(shí)際類型調(diào)用相關(guān)方法。多態(tài)的好處,在于增加程序的靈活性,保證程序的可擴(kuò)展性。9.21 對(duì)象轉(zhuǎn)型對(duì)象類型轉(zhuǎn)化只限于父子繼承關(guān)系中。子類轉(zhuǎn)父類可以自動(dòng)轉(zhuǎn)型,父類轉(zhuǎn)子類需要強(qiáng)制類型轉(zhuǎn)化。子類之間不能進(jìn)行強(qiáng)制類型轉(zhuǎn)化,除非存在繼承關(guān)系。Instanceof用來(lái)判斷某個(gè)對(duì)象是否屬于某個(gè)類的對(duì)象或該類的子類的對(duì)象。9.22 Java語(yǔ)言四大特性 Java語(yǔ)言四大特性,抽象、封裝、繼承和多態(tài)。抽象,java語(yǔ)言是對(duì)現(xiàn)實(shí)世界的抽象和模擬;封裝,通過(guò)將概念的屬性和行為進(jìn)行封裝,實(shí)現(xiàn)類的定義。概念與概念的層級(jí)關(guān)系由

15、繼承關(guān)系來(lái)描述。多態(tài)是java語(yǔ)言的重要特性,實(shí)現(xiàn)方法的動(dòng)態(tài)綁定。9.23 Java訪問(wèn)權(quán)限 Java成員的訪問(wèn)權(quán)限包括private、default、protected、public。用于限定其他對(duì)象對(duì)該類對(duì)象的成員訪問(wèn)權(quán)限。 class的訪問(wèn)權(quán)限只能使用public和default,當(dāng)用public修飾class的時(shí)候類名必須與文件名一致。public類可以在任何地方被訪問(wèn),default類只可以被同一個(gè)包的類訪問(wèn)。9.24 final關(guān)鍵字 Final修飾變量,代表該變量所指的內(nèi)存空間只有只讀權(quán)限沒(méi)有寫入權(quán)限,在定義final類型的變量時(shí),必須初始化。 Final修飾方法,代表該方法不能

16、重寫。Final修飾類,代表該類不能被繼承9.25 ObjectObject類是所有類的起源,java中任何類都是它的后代。Object中的toStirng()方法,用于描述當(dāng)前對(duì)象的有關(guān)信息。在進(jìn)行該數(shù)據(jù)類型與String的連接操作時(shí),將自動(dòng)調(diào)用該對(duì)象的toString()方法??梢愿鶕?jù)需要在用戶自定義類型中重寫toString()方法;Java.lang包下面的類可以直接使用,不需要import。9.26 abstract關(guān)鍵字 用abstract關(guān)鍵字修飾一個(gè)類時(shí),這個(gè)類稱之為抽象類,抽象類不能new出具體的對(duì)象;用abstract修飾一個(gè)方法時(shí),該方法為抽象方法,抽象方法不能有具體的步驟。抽象類專門用于繼承,繼承抽象類時(shí),必須重寫抽象方法。含有抽象方法的類必須是抽象類,抽象類的方法不一定都是抽象方法。抽象類提供了行為的統(tǒng)一訪問(wèn)規(guī)范。抽象類與實(shí)現(xiàn)類之間的關(guān)系是實(shí)現(xiàn)關(guān)系。9.27 接口接口,interface是

溫馨提示

  • 1. 本站所有資源如無(wú)特殊說(shuō)明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁(yè)內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒(méi)有圖紙預(yù)覽就沒(méi)有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫(kù)網(wǎng)僅提供信息存儲(chǔ)空間,僅對(duì)用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對(duì)任何下載內(nèi)容負(fù)責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請(qǐng)與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。

評(píng)論

0/150

提交評(píng)論