下載本文檔
版權(quán)說(shuō)明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡(jiǎn)介
1、Java面向?qū)ο缶A總結(jié)面向?qū)ο笫窍鄬?duì)面向過(guò)程而言的,面向過(guò)程強(qiáng)調(diào)的是功能行為,面向?qū)ο笫菍⒐δ芊庋b進(jìn)對(duì)象,強(qiáng)調(diào)具備了功能的對(duì)象。面試官若問(wèn)什么是面向?qū)ο螅ㄩ_(kāi)放式問(wèn)題,回答必須有自己的體會(huì)):1、面向?qū)ο笫且环N思想,可以使復(fù)雜的問(wèn)題簡(jiǎn)單化,可以使我們從執(zhí)行者變成指揮者2、結(jié)合實(shí)際場(chǎng)景舉個(gè)例子說(shuō)明:面試官就是在用面向?qū)ο蟮乃枷胨伎紗?wèn)題,公司里面現(xiàn)在 有招人的需求,說(shuō)明公司現(xiàn)在的業(yè)務(wù)量比較大,代表著公司在蓬勃發(fā)展,你需要找一些 具有專業(yè)編程經(jīng)驗(yàn)的人來(lái)幫你完成公司的工作,我就是那個(gè)對(duì)象,我具備專業(yè)編程的功能,你就是在指揮我做事情,就是使用我的功能,來(lái)為公司創(chuàng)造效益。【萬(wàn)物皆對(duì)象】面向?qū)ο笕筇卣鳎悍?/p>
2、裝、繼承、多態(tài) 類和對(duì)象的關(guān)系:類:對(duì)現(xiàn)實(shí)生活中事物的描述 對(duì)象:就是這類事物,實(shí)實(shí)在在存在個(gè)體 描述事物就是描述事物的屬性(對(duì)應(yīng)類中變量)和行為(對(duì)應(yīng)類中方法),屬性和行為共同稱為類的成員(成員變量和成員方法)成員變量作用于整個(gè)類中,局部變量作用于函數(shù)中,或者語(yǔ)句中 成員變量在堆內(nèi)存中,因?yàn)閷?duì)象的存在,才在內(nèi)存中存在,局部變量:存在棧內(nèi)存中 封裝(Encapsulation ):是指隱藏對(duì)象的屬性和實(shí)現(xiàn)細(xì)節(jié),僅對(duì)外提供公共訪問(wèn)方式 好處:將變化隔離、便于使用、提高重用性、提高安全性封裝原則:將不需要對(duì)外提供的內(nèi)容都隱藏起來(lái),把屬性都隱藏,提供公共方法對(duì)其訪問(wèn)private (私有):權(quán)限修飾
3、符,用于修飾類中的成員(成員變量,成員函數(shù)),私有只在本類中有效。static用于修飾成員(成員變量和成員函數(shù))被修飾的成員:隨著類的加載而加載,優(yōu)先于對(duì)象存在,被所有對(duì)象所共享,可以直接被類名調(diào)用。類名靜態(tài)成員【方法區(qū)、共享區(qū)、數(shù)據(jù)區(qū)】-存放類中的方法和共享數(shù)據(jù)。什么時(shí)候定義靜態(tài)函數(shù):當(dāng)功能內(nèi)部沒(méi)有訪問(wèn)到非靜態(tài)數(shù)據(jù)(對(duì)象的特有數(shù)據(jù)),那么該功能可以定義成靜態(tài)的,用類名直接調(diào)用。Eg:獲取數(shù)組的最大值class ArrayTool public static void main(String args)int arr=5,8,4,1,3,5,8,77,55,99;int max=(arr);
4、max=+max); class GetMaxpublic static int getMax(i nt arr)int max=0;for(i nt x=0;xarrmax)max=x;return arrmax;構(gòu)造代碼塊(定義對(duì)象共性初始化內(nèi)容):給對(duì)象進(jìn)行初始化,對(duì)象一建立,就運(yùn)行,而且優(yōu)先于構(gòu)造函數(shù)執(zhí)行。構(gòu)造代碼塊是給所有對(duì)象進(jìn)行統(tǒng)一初始化,而構(gòu)造函數(shù)是給對(duì)應(yīng)對(duì)象進(jìn)行初始化。|this關(guān)鍵字:代表它所在函數(shù)所屬對(duì)象的引用。簡(jiǎn)單說(shuō):哪個(gè)對(duì)象在調(diào)用this所在的函數(shù),this就代表那個(gè)對(duì)象。構(gòu)造函數(shù)間調(diào)用只能用 this語(yǔ)句,this語(yǔ)句只能放在構(gòu)造函數(shù)第一行,因?yàn)槌跏蓟瘎?dòng)作要 先執(zhí)行,
5、構(gòu)造函數(shù)的權(quán)限和類的權(quán)限一致。靜態(tài)代碼塊(可以驗(yàn)證類是否加載):格式:static靜態(tài)代碼塊中的執(zhí)行語(yǔ)句。特點(diǎn):隨著類的加載而加載,只執(zhí)行一次,并優(yōu)先于主函數(shù),一般用于類的初始化。Pers on p = new Pers on (zha ngsa n,20);該句話都做了什么事情1因?yàn)閚ew用到了 .所以會(huì)先找到文件并加載到內(nèi)存中。2, 執(zhí)行該類中的static 代碼塊,如果有的話,給類進(jìn)行初始化。3, 在堆內(nèi)存中開(kāi)辟空間,分配內(nèi)存地址。4,在堆內(nèi)存中建立對(duì)象的特有屬性。并進(jìn)行默認(rèn)初始化。5,對(duì)屬性進(jìn)行顯示初始化。6,對(duì)對(duì)象進(jìn)行構(gòu)造代碼塊初始化。7, 對(duì)對(duì)象進(jìn)行對(duì)應(yīng)的構(gòu)造函數(shù)初始化。8, 將內(nèi)
6、存地址付給棧內(nèi)存中的p變量設(shè)計(jì)模式:解決某一類問(wèn)題最行之有效的方法,java中有23中設(shè)計(jì)模式單例設(shè)計(jì)模式:解決一個(gè)類在內(nèi)存只存在一個(gè)對(duì)象1避免其他程序過(guò)多建立該類對(duì)象,禁止其他程序建立該類對(duì)象(將構(gòu)造函數(shù)私有化)2、為了讓其他程序可以訪問(wèn)到該類對(duì)象,在本類中,自定義一個(gè)對(duì)象(在類中創(chuàng)建一個(gè)本 類對(duì)象)3、為了方便其他程序?qū)ψ远x對(duì)象的訪問(wèn),可以對(duì)外提供一些訪問(wèn)方式(提供一個(gè)方法可 以獲取到該對(duì)象)對(duì)于事物該怎么描述就怎么描述,當(dāng)需要將該事物的對(duì)象保證在內(nèi)存中唯一時(shí),就將以上的三步加上即可。方法被調(diào)用只有兩種方式:對(duì)象調(diào)用和類名調(diào)用( static )Eg: class SimpleDemoh
7、is ;外部類要訪問(wèn)內(nèi)部類,不需建立內(nèi)部類對(duì)象。當(dāng)內(nèi)部類定義在外部類的成員位置上,而且非私有,可以在外部其他類中,直接建立內(nèi)部類 對(duì)象,格式:外部類名內(nèi)部類名 變量名=外部類對(duì)象內(nèi)部類對(duì)象in=new Outer () .new Inner ();當(dāng)內(nèi)部類在成員位置上,就可以被成員修飾符所修飾,如private (將內(nèi)部類在外部類中進(jìn)行封裝)static (只能訪問(wèn)外部類中的static 成員,出現(xiàn)了訪問(wèn)局限)在外部其他類中,訪問(wèn)static 內(nèi)部類的非靜態(tài)成員:new () .function();在外部其他類中,直接訪問(wèn)static內(nèi)部類的靜態(tài)成員:();注意:當(dāng)內(nèi)部類中定義了靜態(tài)成員,內(nèi)
8、部類必須是靜態(tài)的;當(dāng)外部類中的靜態(tài)方法訪問(wèn)內(nèi)部類時(shí),內(nèi)部類也必須是static 的。內(nèi)部類定義在局部時(shí),不可以被成員修飾符修飾,可以直接訪問(wèn)外部類中的成員,因?yàn)檫€持有外部類中的引用,但是不可以訪問(wèn)它所在的局部中的變量,只能訪問(wèn)被final修飾的局部變量。匿名內(nèi)部類:就是內(nèi)部類的簡(jiǎn)寫格式前提:必須繼承一個(gè)類或者實(shí)現(xiàn)接口。匿名內(nèi)部類的格式:new父類或者接口() 定義子類的內(nèi)容其實(shí)匿名內(nèi)部類就是一個(gè)匿名子類對(duì)象,而且這個(gè)對(duì)象有點(diǎn)胖,或者理解為有內(nèi)容的對(duì)象。匿名內(nèi)部類中定義的方法最好不要超過(guò)3個(gè);異常:就是程序在運(yùn)行時(shí)出現(xiàn)不正常情況是對(duì)問(wèn)題的描述,將問(wèn)題進(jìn)行對(duì)象的封裝。異常由來(lái):?jiǎn)栴}也是現(xiàn)實(shí)生活中的
9、一個(gè)具體的事物,也可以通過(guò)java的類的形式進(jìn)行描述,并封裝成對(duì)象,其實(shí)就是java對(duì)不正常情況進(jìn)行描述后的對(duì)象體現(xiàn)。對(duì)于問(wèn)題的劃分:對(duì)于嚴(yán)重的, java通過(guò)Error類進(jìn)行描述,一般不編寫針對(duì)性的代碼對(duì) 其進(jìn)行處理;對(duì)于非嚴(yán)重的, java通過(guò)Exception類進(jìn)行描述,可以使用針對(duì)性的處理方 式進(jìn)行處理。異常處理語(yǔ)句:try需要被檢測(cè)的代碼;catch (異常類 變量)處理異常的代碼(處理方式);fin ally一定會(huì)執(zhí)行的代碼;對(duì)捕獲到的異常對(duì)象進(jìn)行常見(jiàn)方法操作:String getMessage ():獲取異常信息。對(duì)多異常的處理:1、聲明異常時(shí),建議聲明更為具體的異常,這樣處理可
10、以更具體2、 對(duì)方聲明幾個(gè)異常,就對(duì)應(yīng)有幾個(gè)catch塊,不要定義多余的 catch塊,如果多個(gè)catch 塊中的異常出現(xiàn)繼承關(guān)系,父類異常catch塊放在最下面。throws和throw 的區(qū)別:throws使用在函數(shù)上,后面跟的異常類,可以跟多個(gè),用逗號(hào)隔開(kāi);throw使用在函數(shù)內(nèi),后面跟的是異常對(duì)象。Exception 中有一個(gè)特殊的子類異常 RuntimeException 運(yùn)行時(shí)異常,如果在函數(shù)內(nèi)部拋出 該異常,函數(shù)上可以不用聲明(因?yàn)椴恍枰屨{(diào)用者處理) ,編譯一樣通過(guò),如果在函數(shù)上 聲明了該異常,調(diào)用者可以不用進(jìn)行處理(當(dāng)該異常發(fā)生,希望程序停止,因?yàn)樵谶\(yùn)行時(shí), 出現(xiàn)了無(wú)法繼續(xù)運(yùn)
11、算的情況,希望停止程序后,對(duì)代碼進(jìn)行修正) ,編譯一樣通過(guò)! 自定義異常時(shí),如果該異常發(fā)生,無(wú)法再繼續(xù)進(jìn)行運(yùn)算,就讓自定義異常繼承 RuntimeException 。異常的練習(xí):/*畢老師用電腦上課。開(kāi)始思考上課中出現(xiàn)的問(wèn)題。比如問(wèn)題是電腦藍(lán)屏。電腦冒煙。要對(duì)問(wèn)題進(jìn)行描述,封裝成對(duì)象。 可是當(dāng)冒煙發(fā)生后,出現(xiàn)講課進(jìn)度無(wú)法繼續(xù)。出現(xiàn)了講師的問(wèn)題:課時(shí)計(jì)劃無(wú)法完成。*/class Teacherprivate String name;private Computer cmpt;Teacher(String name)=name;cmpt=new Computer();public void pr
12、elect()throws NoplanExceptiontry();catch(LanPingException e)();catch(MaoYanException e)test();throw new NoplanException(課時(shí)無(wú)法繼續(xù) +(); 老師講課 );public void test() 做練習(xí) );class LanPingException extends ExceptionLanPingException(String message) super(message);class MaoYanException extends ExceptionMaoYanException(String message) super(message);class NoplanException extends ExceptionNoplanException(String message) super(message);class Computerprivate int state=3; 名,包也是一種封裝形式。 包與包之間的訪問(wèn):被訪問(wèn)的包中的類以及類中的成員,需要 public 修飾;不同包中的子 類可以直接訪問(wèn)父類中被 protected 權(quán)限修飾的
溫馨提示
- 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ì)自己和他人造成任何形式的傷害或損失。
最新文檔
- GB/T 45101-2024動(dòng)物炭疽診斷技術(shù)
- PB-22-6-Hydroxyisoquinoline-isomer-生命科學(xué)試劑-MCE-4732
- KOTX1-生命科學(xué)試劑-MCE-8752
- Dipalmitelaidin-生命科學(xué)試劑-MCE-4147
- Asante-potassium-green-1-TMA-APG-1-TMA-生命科學(xué)試劑-MCE-1099
- 8-S-Hydroxy-9-S-hexahydrocannabinol-生命科學(xué)試劑-MCE-2932
- 1cP-MiPLA-生命科學(xué)試劑-MCE-6571
- 二零二五年度股權(quán)與合伙人協(xié)議書整合執(zhí)行細(xì)則
- 二零二五年度2025年度新材料研發(fā)與應(yīng)用連帶保證借款合同
- 2025年度耕地復(fù)墾與農(nóng)業(yè)生態(tài)環(huán)境保護(hù)合同
- 電力服務(wù)收費(fèi)標(biāo)準(zhǔn)附表
- 小學(xué)主題班會(huì)教學(xué)設(shè)計(jì)-《給你點(diǎn)個(gè)“贊”》通用版
- 【教學(xué)創(chuàng)新大賽】《系統(tǒng)解剖學(xué)》教學(xué)創(chuàng)新成果報(bào)告
- 賽意EAM設(shè)備管理IOT解決方案
- 氫氰酸安全技術(shù)說(shuō)明書MSDS
- 動(dòng)物檢疫技術(shù)-動(dòng)物檢疫的范圍(動(dòng)物防疫與檢疫技術(shù))
- 比較思想政治教育學(xué)
- 醫(yī)用內(nèi)窺鏡冷光源產(chǎn)品技術(shù)要求深圳邁瑞
- 砌墻磚和砌塊檢測(cè)作業(yè)指導(dǎo)書
- 護(hù)理教學(xué)查房評(píng)分標(biāo)準(zhǔn)
- GB/T 23505-2017石油天然氣工業(yè)鉆機(jī)和修井機(jī)
評(píng)論
0/150
提交評(píng)論