java技術(shù)人員面試題_第1頁
java技術(shù)人員面試題_第2頁
java技術(shù)人員面試題_第3頁
java技術(shù)人員面試題_第4頁
java技術(shù)人員面試題_第5頁
已閱讀5頁,還剩6頁未讀, 繼續(xù)免費(fèi)閱讀

下載本文檔

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

文檔簡介

java技術(shù)人員面試題(附加答案)答題時(shí)間40分鐘,請(qǐng)將姓名、畢業(yè)學(xué)校、專業(yè)及考題答案寫在答題紙上,不要在試題紙上留有任何痕跡,謝謝!1.寫出如下代碼的運(yùn)行結(jié)果。(CoreJava)publicclassTestString{publicstaticvoidlink(Stringa){a+="World";}publicstaticvoidmain(String[]args){

Stringa="Hello";

link(a);

System.out.println(a);}}答:Hello2.寫出如下代碼的運(yùn)行結(jié)果。(CoreJava)packagetest;publicclassFatherClass{publicFatherClass(){System.out.println("FatherClassCreate");}}packagetest;importtest.FatherClass;publicclassChildClassextendsFatherClass{publicChildClass(){System.out.println("ChildClassCreate");}publicstaticvoidmain(String[]args){FatherClassfc=newFatherClass();ChildClasscc=newChildClass();}}答:FatherClassCreateFatherClassCreateChildClassCreate3.寫一個(gè)函數(shù)要求輸入一個(gè)字符串和一個(gè)字符長度,對(duì)該字符串進(jìn)行分隔,并返回分割結(jié)果。函數(shù)代碼如下,請(qǐng)完成空白部分。(CoreJava)publicString[]split(Stringstr,intchars){intn=(str.length()-1+chars)/chars;Stringret[]=newString[n];for(inti=0;i<n;i++){if(i<n-1){ret[i]=str.substring(i*chars,(i+1)*chars);}else{ret[i]=str.substring(i*chars);}}returnret;}4.一個(gè)byte幾個(gè)bit。(CoreJava)答:8個(gè)。5.“beijing”==“beijing”;的返回結(jié)果是True還是False。(CoreJava)答:True。

6.請(qǐng)說明String,StringBuffer和StringBuilder的區(qū)別。(CoreJava)答:String的長度是不可變的;StringBuffer的長度是可變的,如果你對(duì)字符串中的內(nèi)容經(jīng)常進(jìn)行操作,特別是內(nèi)容要修改時(shí),那么使用StringBuffer,如果最后需要String,那么使用StringBuffer的toString()方法;線程安全;StringBuilder是從JDK5開始,為StringBuffer該類補(bǔ)充了一個(gè)單個(gè)線程使用的等價(jià)類;通常應(yīng)該優(yōu)先使用StringBuilder類,因?yàn)樗С炙邢嗤牟僮?,但由于它不?zhí)行同步,所以速度更快。7.try{}里有一個(gè)return語句,那么緊跟在這個(gè)try后的finally{}里的code會(huì)不會(huì)被執(zhí)行,什么時(shí)候被執(zhí)行,在return語句前還是后。(CoreJava)答:會(huì)被執(zhí)行,在return語句后,程序跳入finally{}語句塊。8.數(shù)組有沒有l(wèi)ength()這個(gè)方法?String有沒有l(wèi)ength()這個(gè)方法?(CoreJava)答:數(shù)組里沒有l(wèi)ength()方法,但是有l(wèi)ength屬性。String有l(wèi)ength()方法。9.語句floatf=1.3;編譯能否通過?(CoreJava)答:不能;應(yīng)該用強(qiáng)制類型轉(zhuǎn)換,如下所示:floatf=(float)1.3;10.說明final,finally,finalize的區(qū)別。(CoreJava)答:final是修飾符,finally是try塊的一部分,finalize是用于資源釋放的方法。11.GC是什么?為什么要用它。(CoreJava)答:GC是垃圾收集器;Java程序員不用擔(dān)心內(nèi)存管理,因?yàn)槔占鲿?huì)自動(dòng)進(jìn)行管理。要請(qǐng)求垃圾收集,可以調(diào)用方法:System.gc()或Runtime.getRuntime().gc()。12.Overload和Override的區(qū)別;Overloaded的方法是否可改變返回值類型。(CoreJava)答:方法的覆蓋Overriding和重載Overloading是Java多態(tài)性的不同表現(xiàn)。覆蓋Overriding是父類與子類之間多態(tài)性的一種表現(xiàn)(又稱為運(yùn)行時(shí)多態(tài)),重載Overloading是一個(gè)類中多態(tài)性的一種表現(xiàn)(也稱為編譯時(shí)多態(tài))。如果在子類中定義某方法與其父類有相同的名稱和參數(shù),我們說該方法被覆蓋(Overriding),子類的對(duì)象使用這個(gè)方法時(shí),將調(diào)用子類中的定義,對(duì)它而言,父類中的定義如同被“屏蔽”了。如果在一個(gè)類中定義了多個(gè)同名的方法,它們或有不同的參數(shù)個(gè)數(shù)或有不同的參數(shù)類型,則稱為方法的重載(Overloading)。Overloaded的方法是可以改變返回值的類型。13.面向?qū)ο蟮奶卣饔心男┓矫妗?ObjectOriented)答:封裝、繼承、多態(tài):1)封裝:指把一個(gè)類的內(nèi)部實(shí)現(xiàn)隱藏起來,對(duì)外提供公開一致的接口,從而具有更好的可維護(hù)性;2)繼承:使一個(gè)類自動(dòng)獲得另一個(gè)類的方法和屬性;3)多態(tài):指通過對(duì)父類的繼承可以實(shí)現(xiàn)不同功能的子類。14.接口和抽象類的區(qū)別。(ObjectOriented)答:抽象類與接口都用于抽象,但是抽象類(JAVA中)可以有自己的部分實(shí)現(xiàn),而接口則完全是一個(gè)標(biāo)識(shí)(同時(shí)有多重繼承的功能)。成員方法中包含抽象方法的類被叫做抽象類(abstractclass);不能創(chuàng)建abstract類的實(shí)例,然而可以創(chuàng)建一個(gè)引用變量,其類型是一個(gè)抽象類,并讓它指向具體子類的一個(gè)實(shí)例;不能有抽象構(gòu)造函數(shù)或抽象靜態(tài)方法;Abstract類的子類為它們父類中的所有抽象方法提供實(shí)現(xiàn),否則它們也是抽象類。接口(interface)是抽象類的變體,在接口中,所有方法都是抽象的;多繼承性可通過實(shí)現(xiàn)這樣的接口而獲得;接口只可以定義staticfinal成員變量;當(dāng)類實(shí)現(xiàn)特殊接口時(shí),它定義所有這種接口的方法;允許使用接口名作為引用變量的類型。15.說明union與unionall的區(qū)別。(SQL)答:union和unionall都用于連接兩個(gè)數(shù)據(jù)查詢的結(jié)果集,union會(huì)去除兩個(gè)結(jié)果集中的相同記錄,unionall則不會(huì)。16.struts的入口類。(Web)答:ActionServlet是Struts的入口類,所有的struts請(qǐng)求都經(jīng)由該類轉(zhuǎn)發(fā)處理17.在hibernate中,在配置文件呈標(biāo)題一對(duì)多,多對(duì)多的標(biāo)簽是什么。答:一對(duì)多的標(biāo)簽為:<one-to-many>;多對(duì)多的標(biāo)簽為:<many-to-many>;18.詳細(xì)描述MVC。(Web)答:基于Java的Web應(yīng)用系統(tǒng)采用MVC架構(gòu)模式,即model(模型)、view(視圖)、control(控制)分離設(shè)計(jì)。這是目前WEB應(yīng)用服務(wù)系統(tǒng)的主流設(shè)計(jì)方向。Model:即處理業(yè)務(wù)邏輯的模塊,每一種處理一個(gè)模塊;View:負(fù)責(zé)頁面顯示,顯示MODEL處理結(jié)果給用戶,主要實(shí)現(xiàn)數(shù)據(jù)到頁面轉(zhuǎn)換過程;Control:負(fù)責(zé)每個(gè)請(qǐng)求的分發(fā),把form數(shù)據(jù)傳遞給MODEL處理,把處理結(jié)果的數(shù)據(jù)傳遞給VIEW顯示。19.請(qǐng)畫出Servlet2.2以上WebApplication的基本目錄結(jié)構(gòu)。(Web)答:目錄結(jié)構(gòu)如下圖所示:webapps

|Applocation

|__________________|

|JSP頁面

WEB-INF

|

___________________

|

|

|

Class

lib

web.xml20.JSP中兩種動(dòng)態(tài)和靜態(tài)include方式的實(shí)現(xiàn)。(Web)答:動(dòng)態(tài)include用jsp:include動(dòng)作實(shí)現(xiàn),它總是會(huì)檢查所含文件中的變化,適合用于包含動(dòng)態(tài)頁面,并且可以帶參數(shù);靜態(tài)include用<%@include%>指令實(shí)現(xiàn),適用于包含靜態(tài)頁面21.簡述你對(duì)Struts框架的理解。(Web)答:Struts是采用JavaServlet/JavaServerPages技術(shù),開發(fā)Web應(yīng)用程序的開放源碼的framework。采用Struts能開發(fā)出基于MVC(Model-View-Controller)設(shè)計(jì)模式的應(yīng)用構(gòu)架;Struts有如下的主要功能:1)包含一個(gè)controllerservlet,能將用戶的請(qǐng)求發(fā)送到相應(yīng)的Action對(duì)象。2)JSP自由tag庫,并且在controllerservlet中提供關(guān)聯(lián)支持,幫助開發(fā)員創(chuàng)建交互式表單應(yīng)用。3)提供了一系列實(shí)用對(duì)象:XML處理、通過JavareflectionAPIs自動(dòng)處理JavaBeans屬性、國際化的提示和消息。22.設(shè)計(jì)模式有哪些。(UML)答:包括單類模式,工廠模式,MVC模式,觀察者模式,代理模式,試配器模式,門面模式等等共23種之多。23.UML分析設(shè)計(jì)中常用的幾種圖。(UML)答:用例圖,靜態(tài)圖(包括類圖、對(duì)象圖、和包圖)、行為圖、交互圖(順序圖

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(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ǔ)空間,僅對(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)論