Java 課程知識(shí)點(diǎn)復(fù)習(xí)總結(jié)_第1頁
Java 課程知識(shí)點(diǎn)復(fù)習(xí)總結(jié)_第2頁
Java 課程知識(shí)點(diǎn)復(fù)習(xí)總結(jié)_第3頁
Java 課程知識(shí)點(diǎn)復(fù)習(xí)總結(jié)_第4頁
Java 課程知識(shí)點(diǎn)復(fù)習(xí)總結(jié)_第5頁
已閱讀5頁,還剩5頁未讀, 繼續(xù)免費(fèi)閱讀

付費(fèi)下載

下載本文檔

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

文檔簡介

Java是一種解釋性的語言垃圾收集機(jī)制:自動(dòng)地不定期檢查內(nèi)存,自動(dòng)刪除垃圾。JavaApplication(Java應(yīng)用程序)Java程序可以分為兩類JavaApplet(Java小程序)Java由類組成,類是Java的基本組成單位。JavaApplication,Java應(yīng)用程序的主要特點(diǎn)是:有一個(gè)或多個(gè)類組成,其中必有一個(gè)定義了main()方法。main()方法是自動(dòng)執(zhí)行的類方法,是Java應(yīng)用程序運(yùn)行的起始點(diǎn)。定義了main()方法的類稱之為主類。獨(dú)立應(yīng)用程序必須包含如下格式聲明的主類和main()方法publicclassMainClass{publicstaticvoidmain(String[]args){//writecodehere}}編譯、執(zhí)行命令用”javac”命令編譯源文件用”java”命令解釋執(zhí)行類文件標(biāo)識(shí)符只能由英文字母、下劃線、美元符號(hào)($)和數(shù)字組成,且第一個(gè)字符不能是數(shù)字。標(biāo)識(shí)符必須是一個(gè)連續(xù)的整體,中間不能有空格。關(guān)鍵字:事先定義的,有特別意義的標(biāo)識(shí)符,又叫“保留字”abstract boolean break byte casecatch char class continue defaultdo double else extends finalfinally float for if implementsimport instanceof int interface longnative new package private protectedpublic return short static superswitch synchronzized this throw throwstransient try void volatile while基本數(shù)據(jù)類型類型關(guān)鍵字范圍/格式說明邏輯型boolean8位二進(jìn)制邏輯值(true/false)文本類型char16位Unicode字符集單字符String字符串整型byteshortintlong8位二進(jìn)制16位二進(jìn)制32位二進(jìn)制64位二進(jìn)制字節(jié)型整數(shù)-128~+127短整型整數(shù)長整型浮點(diǎn)型floatdouble32位64位單精度浮點(diǎn)數(shù)雙精度浮點(diǎn)數(shù)類的三大特性:1.封裝性2.繼承性3.多態(tài)性.聲明類的對象類的對象就是以該類為模板創(chuàng)建出來的一個(gè)具體的實(shí)例,實(shí)例是類的一個(gè)特定實(shí)體,因?yàn)樗鼌^(qū)別于類的所有其他實(shí)例。聲明一個(gè)類的對象使用語句格式:類名實(shí)例名(如:Animalhorse;)classmyClass=newclass();創(chuàng)建對象:Java語言使用new操作符為對象創(chuàng)建內(nèi)存空間。即用”new”創(chuàng)建類的對象。例如,為Animal類創(chuàng)建一個(gè)對象horse,可以這樣做:Animalhorse1=newAnimal(2);Animalhorse2=horse1構(gòu)造方法:是類在創(chuàng)建對象時(shí),new動(dòng)作要執(zhí)行的方法。構(gòu)造方法帶參數(shù),類的創(chuàng)建也必須帶參數(shù)。publicclassAA{publicAA(intm){}}AAa=newAA(x);//x為給構(gòu)造函數(shù)傳遞的參數(shù)封裝的四個(gè)關(guān)鍵字:1.public表明該成員變量可被類外的程序訪問;訪問修飾符2.protected表明該成員變量只能被雨當(dāng)前類同處一個(gè)包中的類或當(dāng)前類的子類訪問;3.private表明該該成員變量只能在該類的內(nèi)部被訪問。4.static說明該成員變量時(shí)一個(gè)類變量,類變量為一個(gè)類所具有。This變量。含義:this表示的是當(dāng)前類的當(dāng)前對象本身。準(zhǔn)確地說,this代表了當(dāng)前對象的一個(gè)引用。對象的引用可以理解為對象的一個(gè)別名,通過引用可以順利地訪問到該對象,包括訪問對象的成員變量、調(diào)用對象的方法等。但是對象的引用不能作為內(nèi)存地址使用,它僅僅是作為對象的名字(或別名)來使用。對象:用this關(guān)鍵字可以調(diào)用到當(dāng)前對象的方法或者用當(dāng)前對象的成員變量。在構(gòu)造函數(shù)重載時(shí),可以使用this(parameterList);來調(diào)用相應(yīng)參數(shù)的構(gòu)造方法。使用this變量調(diào)用基本構(gòu)造方法時(shí),必須出現(xiàn)在當(dāng)前構(gòu)造方法的第一行。重載是Java提供的一種多態(tài)機(jī)制,它允許在同一個(gè)類中聲明多個(gè)名稱相同的方法,但這些方法必須有不同的形式參數(shù)列表(參數(shù)的個(gè)數(shù)、類型或順序不同),這就是方法的重載。函數(shù)重載是指同一個(gè)函數(shù)名可以對應(yīng)著多個(gè)函數(shù)的實(shí)現(xiàn)。每種實(shí)現(xiàn)對應(yīng)著一個(gè)函數(shù)體,這些函數(shù)的名字相同,但是函數(shù)的參數(shù)的類型不同。這就是函數(shù)重載的概念。函數(shù)重載在類和對象的應(yīng)用尤其重要。構(gòu)造方法構(gòu)造方法的方法名與類相同;構(gòu)造方法沒有返回值(沒有返回值和返回值是void是不一樣的);完成賦值。修飾符修飾符分為:訪問控制符和非訪問控制符。修飾符修飾的對象分為兩個(gè)層次:一個(gè)是類層次,一個(gè)是類的成員層次。在類這個(gè)層次的修飾會(huì)對成員層次的修飾有一定的影響。1類的繼承中,子類和父類的關(guān)系共享性:即子類可以共享父類的公共屬性和方法。差異性:即子類和父類一定會(huì)存在某些差異,否則就應(yīng)父類、子類之間的對照關(guān)系該是通一個(gè)類。層次性:即由Java規(guī)定的單繼承性,每個(gè)類都處于繼承關(guān)系樹種的某一個(gè)層面。Java要求生命的每個(gè)類都有父類,當(dāng)沒有現(xiàn)實(shí)指定父類時(shí),父類隱含為java.lang包中的Object類。一個(gè)父類可以同時(shí)擁有多個(gè)子類,這時(shí)這個(gè)父類實(shí)際上是所有子類的公共屬性和方法的集合,而每個(gè)子類則是父類的特殊化,是在公共屬性的基礎(chǔ)上的功能擴(kuò)展。Java不支持類的多重繼承,只支持類的單繼承,即每個(gè)子類只能有一個(gè)直接父類,類的層次為樹狀結(jié)構(gòu),Object類為樹的根節(jié)結(jié)點(diǎn)。2什么是類的多態(tài),什么體現(xiàn)了類的多態(tài)性?多態(tài)性實(shí)質(zhì)同名的不同方法在程序中共存。為同一個(gè)方法定義幾個(gè)版本,運(yùn)行時(shí)根據(jù)不同的情況綁定不同的版本并執(zhí)行。調(diào)用者只需要使用同一個(gè)方法名,系統(tǒng)就會(huì)根據(jù)不同的情況,調(diào)用相應(yīng)的不同方法,從而實(shí)現(xiàn)不同的功能。多態(tài)性的實(shí)現(xiàn)有兩種:(1)覆蓋實(shí)現(xiàn)多態(tài)性:通過子類對父類方法的重寫來實(shí)現(xiàn)。使用時(shí)注意,在子類重寫父類方法是,要求與父類中的方法的原型(包括參數(shù)個(gè)數(shù)、類型、順序)完全相同。程序在運(yùn)行時(shí)將通過對象的不同類型,綁定到相應(yīng)的方法。(2)重載實(shí)現(xiàn)多態(tài)性:通過定義類中的多個(gè)同名的不同方法來實(shí)現(xiàn)。程序運(yùn)行時(shí)是根據(jù)參數(shù)列表的不同來區(qū)分不同的方法,從而綁定到相應(yīng)的方法上。3this和super的作用是什么?成員函數(shù)中定義了和成員變量中相同的變量時(shí),引用成員變量要用this.構(gòu)造函數(shù)中調(diào)用同一個(gè)類的其他構(gòu)造函數(shù)時(shí)用this子類中覆蓋了父類成員變量或成員函數(shù)時(shí),在子類中調(diào)用父類的變量或函數(shù)要用super子類的構(gòu)造函數(shù)里調(diào)用直接父類的構(gòu)造函數(shù)用super,不能用于調(diào)用間接父類的構(gòu)造函數(shù)。4什么是構(gòu)造方法,其功能是什么?定義一個(gè)新的類之后,就可以創(chuàng)建這個(gè)類的對象,創(chuàng)建一個(gè)類的對象的過程稱為類的實(shí)例化,對象就是以類為模板創(chuàng)建的具體事例。同一個(gè)類的不同對象分別封裝有相同的變量(但彼此之間的儲(chǔ)存空間是獨(dú)立的),并共享類的實(shí)例方法。其功能是對類的對象完成賦值5classPerson{Stringname,department;intage;publicPerson(Stringn){name=n;}publicPerson(Stringn,inta){name=n;age=a;}publicPerson(Stringn,Stringd,inta){(1)department=d;}publicvoidshow(){System.out.println(name+age);}}publicclassTeacherextendsPerson{intsalary;publicvoidshow(){(2)System.out.println(salary);}}下面哪個(gè)可以添加到構(gòu)造方法中?APerson(n,a);Bthis(Person(n,a));Cthis(n,a);Dthis(name,age);下面哪個(gè)可以添加到(2)中?Ashow();Bthis.show();Cperson.show();Dsuper.show();6publicclassPerson{publicintaddValue(inta,intb){ints=a+b;returns;}}classChildextendsPerson{}下面的哪些方法可以加入類ChildAintaddValue(inta,intb)BpublicvoidaddValue()CpublicvoidaddValue(inta)DpublicvoidaddValue(inta,intb)throwsMyException7編寫程序,定義一個(gè)類shape表示一個(gè)二維圖形,方法area面積和perimeter(周長)。定義一些二維圖形,例如矩形,三角形,圓形,它們應(yīng)是shape的子類,classShape{ intl,w;}classAngleextendsShape{Angle(intl,intw){ this.l=l; this.w=w;} voidarea(){floats; s=l*w*0.5f; System.out.println("三角形面積:"+s); } }classRectextendsShape{ Rect(intl,intw){ this.l=l; this.w=w; } voidarea(){ ints; s=l*w; System.out.println("矩形面積:"+s); } voidlen(){intc; c=l+l+w+w; System.out.println("矩形周長:"+c); }}classCircleextendsShape{Circle(intl,intw){ this.l=l; this.w=l; } voidarea(){doubles;s=l*l*3.14;System.out.println("圓面積:"+s); } voidlen(){doublec;c=2.0*l*3.14;System.out.println("圓周長:"+c); }}publicclassNO7{publicstaticvoidmain(String[]args){ Anglelw=newAngle(3,4); lw.area();Rectl=newRect(3,4); l.area();l.len();Circlec=newCircle(3,4);c.area();c.len();}}8編寫程序,定義一個(gè)Person類,含有姓名name和年齡age兩個(gè)成員變量。二個(gè)構(gòu)造方法,分別帶一個(gè)參數(shù)和兩個(gè)參數(shù),完成賦值功能。一個(gè)輸出show()方法,輸出姓名和年齡。定義一個(gè)Student,含有成績g成員變量,一個(gè)輸出方法show(),輸出姓名,年齡,和成績。publicclassNo8{publicstaticvoidmain(String[]args){Studentstudent=newStudent("a",12,1);student.showInfo();}}classPerson{protectedStringname;protectedintage;Person(Stringname,intage){=name;this.age=age;}voidshowinfo(){ System.out.println("Name:"+name+"\nage"+age);}}classStudentextendsPerson{intgrade;Student(Stringname,intage){ super(name,age); this.grade=1;}Student(Stringname,intage,intgrade){super(name,age);this.grade=grade;}voidshowInfo(){System.out.printf("Name:"+name+"age"+age+"grade"+grade);}}1構(gòu)造函數(shù)的作用是什么?是一種特殊的方法,主要用來在創(chuàng)建對象時(shí)初始化對象,即為對象成員變量賦值。2定義一個(gè)類score,它含有私有成員變量english(英語分?jǐn)?shù)),公有成員方法setScore()用來設(shè)置english的值,printScore()用來輸出english的值。在主類中定義類score的兩個(gè)對象stu1,stu2,其英語成績分別為85.5和93.5,輸出這兩個(gè)分?jǐn)?shù)3下面是一個(gè)計(jì)算器類的定義,請完成該類的實(shí)現(xiàn)classCounter{intvalu

溫馨提示

  • 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. 人人文庫網(wǎng)僅提供信息存儲(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)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

最新文檔

評論

0/150

提交評論