JAVA面向?qū)ο筇匦?個(gè)人整理).docx_第1頁
JAVA面向?qū)ο筇匦?個(gè)人整理).docx_第2頁
JAVA面向?qū)ο筇匦?個(gè)人整理).docx_第3頁
JAVA面向?qū)ο筇匦?個(gè)人整理).docx_第4頁
JAVA面向?qū)ο筇匦?個(gè)人整理).docx_第5頁
已閱讀5頁,還剩1頁未讀, 繼續(xù)免費(fèi)閱讀

下載本文檔

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

文檔簡介

JAVA面向?qū)ο筇匦悦嫦驅(qū)ο笕筇匦裕悍庋b、繼承、多態(tài)。一、 封裝:1.概念:將類的某些信息隱藏在類的內(nèi)部,不允許外部程序直接訪問,而是通過該類提供的方法來實(shí)現(xiàn)對隱藏信息的操作和訪問2.好處:a.只能通過規(guī)定的方法訪問數(shù)據(jù)b.隱藏類的實(shí)例細(xì)節(jié),方便修改和實(shí)現(xiàn)3.封裝的實(shí)現(xiàn)步驟:a.修改屬性的可見性(設(shè)為private)b.創(chuàng)建getter/setter方法(用于屬性的讀寫)c.在getter/setter方法中加入屬性控制語句(對屬性值的合法性進(jìn)行判斷)4.JAVA內(nèi)部類:a.概念:定義在另外一個(gè)類里面的類。(包含內(nèi)部類的類叫做外部類)b.作用:1)內(nèi)部類提供了更好的封裝,可以把內(nèi)部類隱藏在外部類之內(nèi)不允許同一個(gè)包中的其他類訪問該類2)內(nèi)部類的方法可以直接訪問外部類的所有數(shù)據(jù),包括私有數(shù)據(jù)3)內(nèi)部類所實(shí)現(xiàn)的功能使用外部類同樣可以實(shí)現(xiàn),只是有時(shí)使用內(nèi)部類更方便c.種類:成員、靜態(tài)、方法、匿名內(nèi)部類d.成員內(nèi)部類:定義成員內(nèi)部類之后,必須使用外部類對象來創(chuàng)建內(nèi)部類對象,不能直接去new一個(gè)內(nèi)部類對象:內(nèi)部類 對象名=外部類對象.new內(nèi)部類()注意:1. 外部類不可以直接使用內(nèi)部類的成員和方法;如需使用內(nèi)部類成員和方法,需先創(chuàng)建內(nèi)部類對象,然后通過內(nèi)部類的對象來訪問其成員和方法Inner inner = new Inner();/在外部類中創(chuàng)建內(nèi)部類對象2. 如果外部類和內(nèi)部類具有相同的成員變量或方法,內(nèi)部類默認(rèn)訪問自己的成員變量方法,如果要訪問外部類的成員變量,可以使用this關(guān)鍵字Outer.this.a;/Outer是外部類,a是外部類變量e.靜態(tài)內(nèi)部類:用static修飾的內(nèi)部類1)靜態(tài)內(nèi)部類不能直接訪問外部類的非靜態(tài)成員,但可以通過 new 外部類().成員 的方式訪問2)如果外部類的靜態(tài)成員與內(nèi)部類的成員名稱相同,可通過 類名.靜態(tài)成員 訪問外部類的靜態(tài)成員,如果外部類的靜態(tài)成員與內(nèi)部類的成員名稱不同,則可通過 成員名 直接調(diào)用外部類的靜態(tài)成員3)創(chuàng)建靜態(tài)內(nèi)部類的對象時(shí),不需要外部類的對象,可以直接創(chuàng)建內(nèi)部類 對象名=new 內(nèi)部類();f.方法內(nèi)部類:內(nèi)部類定義在外部類的方法中,方法內(nèi)部類只在該方法的內(nèi)部可見,即只在該方法內(nèi)可以使用(不能使用訪問控制符和static修飾符)綜合: 結(jié)果:訪問修飾符:可以修飾屬性和方法的訪問范圍訪問修飾符本類同包子類其他Private默認(rèn)ProtectedPublic二、 繼承:1 概念:類與類的一種關(guān)系 父類:基類 子類:派生類 JAVA中的繼承是單繼承,一個(gè)子類只有一個(gè)父類2 好處:子類擁有父類的所有屬性和方法private修飾的無效3 語法規(guī)則:class 子類 extends 父類4 方法的重寫:如果子類對繼承父類的方法不滿意,可以重寫父類繼承的方法,當(dāng)調(diào)用方法時(shí)會(huì)優(yōu)先調(diào)用子類的方法a) 規(guī)則:返回值類型,方法名,參數(shù)類型及個(gè)數(shù)都與父類繼承的方法相同,才叫方法的重寫5 繼承的初始化順序:初始化父類再初始子類;先執(zhí)行初始化對象中的屬性,在執(zhí)行構(gòu)造方法中的初始化6 final關(guān)鍵字:使用final關(guān)鍵字做標(biāo)識有“最終的含義”final可以修飾類、方法、屬性、變量如果final修飾類,則該類不允許被繼承如果final修飾方法,則該方法不允許被覆蓋(重寫)如果final修飾屬性,則該類的屬性不會(huì)進(jìn)行自動(dòng)初始化如果final修飾變量,則該變量的值只能賦一次值,即變?yōu)槌A? super關(guān)鍵字:在對象的內(nèi)部使用,可以代表父類對象訪問父類的變量:super.變量名訪問父類的方法:super.方法名注意:與this區(qū)分開,this指向調(diào)用當(dāng)前方法的變量;super只指向父類三、 多態(tài):使用多態(tài)的時(shí)候兩個(gè)類一定要有一個(gè)繼承關(guān)系1. 引用多態(tài):父類的引用可以指向本類的對象父類的引用可以指向子類的對象父類 對象名=new 父類對象()父類 對象名=new 子類對象()2. 方法多態(tài)創(chuàng)建本類對象時(shí),調(diào)用的方法為本類方法創(chuàng)建子類對象時(shí),調(diào)用的方法為子類重寫的方法或者繼承的方法通過父類的引用調(diào)用子類的方法必須是父類有的方法(即子類繼承或重寫的方法),不能調(diào)用子類獨(dú)有的方法3. 引用類型轉(zhuǎn)換a. 向上類型轉(zhuǎn)換:小類型到大類型的轉(zhuǎn)換b. 向下類型轉(zhuǎn)換:大類型到小類型的轉(zhuǎn)換c. instanceof運(yùn)算符:避免類型轉(zhuǎn)換的完全性問題返回布爾值,一般跟if使用4. 抽象類:抽象類前使用abstract關(guān)鍵字修飾,則該類為抽象類作用:限制規(guī)定子類必須實(shí)現(xiàn)某些方法,但不關(guān)注實(shí)現(xiàn)細(xì)節(jié)使用規(guī)則:1)abstract定義抽象類2)abstract定義抽象方法,只有聲明,不需要實(shí)現(xiàn)3)包含抽象方法的類是抽象類4)抽象類中可以包含普通的方法,也可以沒有抽象方法5)抽象類不能直接創(chuàng)建,可以定義引用變量注意:定義抽象類的順序:acstract class 5. 接口:可以理解為一種特殊的類,由全局常量和公共的抽象方法組成a)定義:和類的定義不同,定義接口不適用class關(guān)鍵字,而是使用interface關(guān)鍵字b)創(chuàng)建接口:修飾符 interface 接口名extends 父接口1,父接口2,零到多個(gè)常量定義零到多個(gè)抽象方法的定義注意:接口是用來被繼承、被實(shí)現(xiàn)的,如果不加abstract系統(tǒng)會(huì)自動(dòng)加上,接口中的方法不能有方法體,修飾符一般用public,不能用private和protected修飾接口c)使用接口:一個(gè)類可以實(shí)現(xiàn)一個(gè)或多個(gè)接口,實(shí)現(xiàn)接口用implements關(guān)鍵字,Java中一個(gè)類只能繼承一個(gè)父類,不靈活,通過實(shí)現(xiàn)多個(gè)接口可以做補(bǔ)充注意:如果一個(gè)類既要繼承父類,又要繼承接口,則先繼承父類再繼承接口,既:先用extends再用implementsd)接口在使用過程當(dāng)中,還經(jīng)常與匿名內(nèi)部類配合使用匿名內(nèi)部類就是沒有名字的內(nèi)部類,多用于實(shí)現(xiàn)而不關(guān)注實(shí)現(xiàn)類的名稱父類: 接口子類:主函數(shù)結(jié)果:四、 UML1. 概念:統(tǒng)一建模語言或標(biāo)準(zhǔn)建模語言,是一個(gè)支持模型化和軟件系統(tǒng)開發(fā)的圖形化語言,為軟件開發(fā)的所有階段提供模型化和可視化支持2. 常用UML圖:a) 用例圖:能夠以可視化的方式,表達(dá)系統(tǒng)如何滿足所收集的業(yè)務(wù)規(guī)則,以及特定的用戶需求等信息 b) 序列圖:用于按照交互發(fā)生的一系列順序,顯示對象之間的這些交互c) 類圖:UML類圖、業(yè)務(wù)邏輯和所有支持結(jié)構(gòu)一同被用于定義全部的代碼結(jié)構(gòu)3. 常用的建模工具:a) Rational Rose(IBM):/RequirementProject/200604043.htmb) Microsoft Office Visio(Microsoft)/china/office/xp/visio/default.aspc) PowerDesigner/UMLTools/powerDesigner/powerDes

溫馨提示

  • 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

提交評論