2018最新java面試題整理_第1頁(yè)
已閱讀1頁(yè),還剩35頁(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基礎(chǔ)篇基礎(chǔ)篇1.11.1基本功基本功1.1.11.1.1面向?qū)ο筇卣髅嫦驅(qū)ο筇卣鞣庋b,繼承,多態(tài)和抽象1、封裝封裝給對(duì)象提供了隱藏內(nèi)部特性和行為的能力。對(duì)象提供一些能被其他對(duì)象訪問(wèn)的方法來(lái)改變它內(nèi)部的數(shù)據(jù)。在Java當(dāng)中,有3種修飾符:public,private和protected。每一種修飾符給其他的位于同一個(gè)包或者不同包下面對(duì)象賦予了不同的訪問(wèn)權(quán)限。下面列出了使用封裝的一些好處:1)通過(guò)隱藏對(duì)象的屬性來(lái)保護(hù)對(duì)象內(nèi)部的狀態(tài)。2)提

2、高了代碼的可用性和可維護(hù)性,因?yàn)閷?duì)象的行為可以被單獨(dú)的改變或者是擴(kuò)展。3)禁止對(duì)象之間的不良交互提高模塊化2、繼承繼承給對(duì)象提供了從基類獲取字段和方法的能力。繼承提供了代碼的重用行,也可以在不修改類的情況下給現(xiàn)存的類添加新特性。3、多態(tài)多態(tài)是編程語(yǔ)言給不同的底層數(shù)據(jù)類型做相同的接口展示的一種能力。一個(gè)多態(tài)類型上的操作可以應(yīng)用到其他類型的值上面。4、抽象抽象是把想法從具體的實(shí)例中分離出來(lái)的步驟,因此,要根據(jù)他們的功能而不是實(shí)現(xiàn)細(xì)節(jié)來(lái)創(chuàng)建類

3、。Java支持創(chuàng)建只暴漏接口而不包含方法實(shí)現(xiàn)的抽象的類。這種抽象技術(shù)的主要目的是把類的行為和實(shí)現(xiàn)細(xì)節(jié)分離開。1.1.21.1.2finalfinalfinallyfinallyfinalizefinalize的區(qū)別的區(qū)別1、final修飾符(關(guān)鍵字)如果一個(gè)類被聲明為final,意味著它不能再派生出新的子類,不能作為父類被繼承。因此一個(gè)類不能既被聲明為abstract的,又被聲明為final的。將變量或方法聲明為final,可以保證它們

4、在使用中不被改變。被聲明為final的變量必須在聲明時(shí)給定初值,而在以后的引用中只能讀取,不可修改。被聲明為final的方法也同樣只能使用,不能重載。2、finally在異常處理時(shí)提供finally塊來(lái)執(zhí)行任何清除操作。如果拋出一個(gè)異常,那么相匹配的catch子句就會(huì)執(zhí)行,然后控制就會(huì)進(jìn)入finally塊(如果有的話)。3、finalize方法名。Java技術(shù)允許使用finalize()方法在垃圾收集器將對(duì)象從內(nèi)存中清除出去之前做必要的

5、清理工作。這個(gè)方法是由垃圾收集器在確定這個(gè)對(duì)象沒(méi)有被引用時(shí)對(duì)這個(gè)對(duì)象調(diào)用的。它是在Object類中定義的,因此所有的類都繼承了它。子類覆蓋finalize()取出類的modifiers數(shù)據(jù)成員方法構(gòu)造器和超類.找出某個(gè)接口里定義的常量和方法說(shuō)明.創(chuàng)建一個(gè)類實(shí)例這個(gè)實(shí)例在運(yùn)行時(shí)刻才有名字(運(yùn)行時(shí)間才生成的對(duì)象).取得和設(shè)定對(duì)象數(shù)據(jù)成員的值如果數(shù)據(jù)成員名是運(yùn)行時(shí)刻確定的也能做到.在運(yùn)行時(shí)刻調(diào)用動(dòng)態(tài)對(duì)象的方法.創(chuàng)建數(shù)組數(shù)組大小和類型在運(yùn)行時(shí)刻

6、才確定也能更改數(shù)組成員的值.反射的應(yīng)用很多,很多框架都有用到spring的iocdi也是反射….javaBean和jsp之間調(diào)用也是反射….struts的FmBean和頁(yè)面之間…也是通過(guò)反射調(diào)用….JDBC的classFName()也是反射…..hibernate的find(Classclazz)也是反射….反射還有一個(gè)不得不說(shuō)的問(wèn)題,就是性能問(wèn)題,大量使用反射系統(tǒng)性能大打折扣。怎么使用使你的系統(tǒng)達(dá)到最優(yōu)就看你系統(tǒng)架構(gòu)和綜合使用問(wèn)題啦,

7、這里就不多說(shuō)了。來(lái)源::uule.blog14235121.1.71.1.7說(shuō)說(shuō)自定義注解的場(chǎng)景及實(shí)現(xiàn)說(shuō)說(shuō)自定義注解的場(chǎng)景及實(shí)現(xiàn)登陸、權(quán)限攔截、日志處理,以及各種Java框架,如Spring,Hibernate,JUnit提到注解就不能不說(shuō)反射,Java自定義注解是通過(guò)運(yùn)行時(shí)靠反射獲取注解。實(shí)際開發(fā)中,例如我們要獲取某個(gè)方法的調(diào)用日志,可以通過(guò)AOP(動(dòng)態(tài)代理機(jī)制)給方法添加切面,通過(guò)反射來(lái)獲取方法包含的注解,如果包含日志注解,就進(jìn)行日

8、志記錄。1.1.81.1.8HTTPHTTP請(qǐng)求的請(qǐng)求的GETGET與POSTPOST方式的區(qū)別方式的區(qū)別1、請(qǐng)求數(shù)據(jù)的方式GET請(qǐng)求,請(qǐng)求的數(shù)據(jù)會(huì)附加在URL之后,以分割URL和傳輸數(shù)據(jù),多個(gè)參數(shù)用&連接。URL的編碼格式采用的是II編碼,而不是uniclde,即是說(shuō)所有的非II字符都要編碼之后再傳輸。POST請(qǐng)求會(huì)把請(qǐng)求的數(shù)據(jù)放置在HTTP請(qǐng)求包的包體中。因此,GET請(qǐng)求的數(shù)據(jù)會(huì)暴露在地址欄中,而POST請(qǐng)求則不會(huì)。2、傳輸數(shù)據(jù)的大

9、小在HTTP規(guī)范中,沒(méi)有對(duì)URL的長(zhǎng)度和傳輸?shù)臄?shù)據(jù)大小進(jìn)行限制。但是在實(shí)際開發(fā)過(guò)程中,對(duì)于GET,特定的瀏覽器和服務(wù)器對(duì)URL的長(zhǎng)度有限制。因此,在使用GET請(qǐng)求時(shí),傳輸數(shù)據(jù)會(huì)受到URL長(zhǎng)度的限制。對(duì)于POST,由于不是URL傳值,理論上是不會(huì)受限制的,但是實(shí)際上各個(gè)服務(wù)器會(huì)規(guī)定對(duì)POST提交數(shù)據(jù)大小進(jìn)行限制,Apache、IIS都有各自的配置。3、安全性POST的安全性比GET的高。這里的安全是指真正的安全,而不同于上面GET提到的安

10、全方法中的安全,上面提到的安全僅僅是不修改服務(wù)器的數(shù)據(jù)。比如,在進(jìn)行登錄操作,通過(guò)GET請(qǐng)求,用戶名和密碼都會(huì)暴露再URL上,因?yàn)榈卿涰?yè)面有可能被瀏覽器緩存以及其他人查看瀏覽器的歷史記錄的原因,此時(shí)的用戶名和密碼就很容易被他人拿到了。除此之外,GET請(qǐng)求提交的數(shù)據(jù)還可能會(huì)造成Crosssiterequestfrogery攻擊4、HTTP中的GET,POST,SOAP協(xié)議都是在HTTP上運(yùn)行的參考:wangli66p5453507.htm

溫馨提示

  • 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ù)僅提供信息存儲(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)論