




已閱讀5頁,還剩10頁未讀, 繼續(xù)免費(fèi)閱讀
版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡介
百川同達(dá) Java 程序員應(yīng)聘摸底考試題一、選擇題。(2*11 分)1. class ExSuper String name; String nick_name; public ExSuper(String s,String t) name = s; nick_name = t; public String toString() return name; public class Example extends ExSuper public Example(String s,String t) super(s,t); public String toString() return name + a.k.a + nick_name; public static void main(String args) ExSuper a = new ExSuper(First,1st); ExSuper b = new Example(Second,2nd); System.out.println(a is + a.toString(); System.out.println(b is + b.toString(); A. 編譯時(shí)會(huì)出現(xiàn)異常。B. 運(yùn)行結(jié)果為: a is First b is secondC. 運(yùn)行結(jié)果為: a is First b is Secong a.k.a 2ndD. 運(yùn)行結(jié)果為: a is First a.k.a 1nd b is Second a.k.a 2nd2. abstract class MineBase abstract void amethod(); static int i;public class Mine extends MineBase public static void main(String argv) int ar = new int5; for (int i = 0; i ar.length; i+) System.out.println(ari); A. 打印 5 個(gè)0。 B. 編譯出錯(cuò),數(shù)組 ar 必須初始化。C編譯出錯(cuò), Mine 應(yīng)聲明為abstract。D. 出現(xiàn) IndexOutOfBoundes 的例外。3. public class Foo public static void main(String args) try return; finally System.out.println(Finally); A. 程序正常運(yùn)行,但不輸出任何結(jié)果。 B. 程序正常運(yùn)行,并輸出 “Finally”。C. 編譯能通過,但運(yùn)行時(shí)會(huì)出現(xiàn)一個(gè)例外。D. 因?yàn)闆]有 catch 語句塊,所以不能通過編譯4. 以下 sql 語句正確的是: A.select studentid,depart,count(*) from student group by depart;B.select studentid, count(*) from student;C.select depart,max(avg(age)from student group by depart;D.select studentid,avg(score),max(score)from score group by studentid5. 標(biāo)簽中 scope 的范圍由小到大是A page session request application B. application page request sessionC. application session request page D. page request session application6. 要讓用戶共享一個(gè) JavaBean 的對象則該對象的范圍應(yīng)改設(shè)置為:A. session B. page C. application D. request7. 關(guān)于自定義標(biāo)簽的使用不正確的是: A 必須在 JSP 頁面中使用 B. 必須經(jīng)過 web.xml 影射 C. 必須存在 tld 文件 D. 自定義標(biāo)簽的類必須是 public 的8. 關(guān)于外鍵約束不正確的是:A外鍵約束與唯一約束不能同時(shí)存在與一個(gè)字段B子表外鍵列的值必須在主表參照列表值的范圍內(nèi),或者為空C主表外鍵值被子表參照時(shí),主表記錄不允許被刪除D外鍵參照的是主表的主鍵或者唯一鍵9. 下面的類,正確的描述是_ public class Example public static void main(String args) static int x = new int15; System.out.println(x5); A. 編譯錯(cuò)誤 B.編譯正確,執(zhí)行錯(cuò)誤 C. 輸出 0 D. 輸出是 null10. 關(guān)于 Oracle 中存儲(chǔ)過程與函數(shù)錯(cuò)誤的是: A函數(shù)必須定義返回類型 B. 存儲(chǔ)過程不能定義返回類型 C函數(shù)可以使用 out 類型參數(shù) D. 存儲(chǔ)過程可以用 in out 類型參數(shù)11. 關(guān)于 Servlet 錯(cuò)誤的是: A . 在 MVC 模式中 Servlet 一般用作控制器 B. Tomcat5.0 中 Servlet 必須通過 web.xml 影射訪問C. Servlet 中可以直接使用內(nèi)置對象 out 調(diào)用 out.println() 進(jìn)行輸出,而不聲明D. Servlet 中可以跳轉(zhuǎn)到另一個(gè) Servlet。二、 簡答題(40 分,答案寫在其他白紙上)1. Vector 與 ArrayList 有什么區(qū)別,在 java.util 包中有哪兩個(gè)類有類似區(qū)別?(3分)ArrayList類ArrayList實(shí)現(xiàn)了可變大小的數(shù)組。它允許所有元素,包括null。ArrayList沒有同步。size,isEmpty,get,set方法運(yùn)行時(shí)間為常數(shù)。但是add方法開銷為分?jǐn)偟某?shù),添加n個(gè)元素需要O(n)的時(shí)間。其他的方法運(yùn)行時(shí)間為線性。每個(gè)ArrayList實(shí)例都有一個(gè)容量(Capacity),即用于存儲(chǔ)元素的數(shù)組的大小。這個(gè)容量可隨著不斷添加新元素而自動(dòng)增加,但是增長算法并沒有定義。當(dāng)需要插入大量元素時(shí),在插入前可以調(diào)用ensureCapacity方法來增加ArrayList的容量以提高插入效率。和LinkedList一樣,ArrayList也是非同步的(unsynchronized)。Vector類Vector非常類似ArrayList,但是Vector是同步的。由Vector創(chuàng)建的Iterator,雖然和ArrayList創(chuàng)建的Iterator是同一接口,但是,因?yàn)閂ector是同步的,當(dāng)一個(gè)Iterator被創(chuàng)建而且正在被使用,另一個(gè)線程改變了Vector的狀態(tài)(例如,添加或刪除了一些元素),這時(shí)調(diào)用Iterator的方法時(shí)將拋出ConcurrentModificationException,因此必須捕獲該異常。Hashtable HashMap 類似2. response.sendRedirect()與都能跳轉(zhuǎn),它們有什么區(qū)別? (3分) 重定向 跳轉(zhuǎn)3. 與 都能包含有什么區(qū)別? (3分) 偽指令會(huì)導(dǎo)致 Web 瀏覽器高速緩存所有頁面。 總是會(huì)檢查所含文件中的變化。4. 存在學(xué)生表,課程表,分?jǐn)?shù)表三個(gè)表: Create table student(studentid number(10) prinary key,name varchar2(30),depart varchar2(20); Create table lesson(lessonid number(10) primary key, lessonname varchar2(20); Create table score(studentid number(10) foreign key references student(studentid), Lessonid number(10) foreign key references student(studentid) Score number(3);寫一個(gè)SQL語句求出考試科目名稱為“java語言”的科目中分?jǐn)?shù)為前10名的學(xué)生id,姓名,專業(yè)。select top 3 stu.studentid,,l.lessonname from score s inner join lesson l on s.Lessonid=l.lessonid inner join student stu on s.studentid=stu.studentid where l.lessonname=java order by s.Score desc;5、Struts框架應(yīng)用了哪些設(shè)計(jì)模式?MVC 工廠 單例 是三個(gè)最明顯的設(shè)計(jì)模式6、請闡述Spring IOC思想(4分)一、什么是IOCIoC就是Inversion of Control,控制反轉(zhuǎn)。在Java開發(fā)中,IoC意味著將你設(shè)計(jì)好的類交給系統(tǒng)去控制,而不是在你的類內(nèi)部控制。這稱為控制反轉(zhuǎn)。下面我們以幾個(gè)例子來說明什么是IoC假設(shè)我們要設(shè)計(jì)一個(gè)Girl和一個(gè)Boy類,其中Girl有kiss方法,即Girl想要Kiss一個(gè)Boy。那么,我們的問題是,Girl如何能夠認(rèn)識這個(gè)Boy? 在我們中國,常見的與GG的認(rèn)識方式有以下幾種 青梅竹馬; 親友介紹; 父母包辦 那么哪一種才是最好呢? 青梅竹馬:Girl從小就知道自己的Boy。 public class Girl void kiss() Boy boy = new Boy(); 然而從開始就創(chuàng)建的Boy缺點(diǎn)就是無法在更換。并且要負(fù)責(zé)Boy的整個(gè)生命周期。如果我們的Girl想要換一個(gè)怎么辦?(筆者嚴(yán)重不支持Girl經(jīng)常更換Boy) 親友介紹:由中間人負(fù)責(zé)提供Boy來見面 public class Girl void kiss() Boy boy = BoyFactory.createBoy(); 親友介紹,固然是好。如果不滿意,盡管另外換一個(gè)好了。但是,親友BoyFactory經(jīng)常是以Singleton的形式出現(xiàn),不然就是,存在于Globals,無處不在,無處不能。實(shí)在是太繁瑣了一點(diǎn),不夠靈活。我為什么一定要這個(gè)親友摻和進(jìn)來呢?為什么一定要付給她介紹費(fèi)呢?萬一最好的朋友愛上了我的男朋友呢? 父母包辦:一切交給父母,自己不用費(fèi)吹灰之力,只需要等著Kiss就好了。 public class Girl void kiss(Boy boy) / kiss boy boy.kiss(); Well,這是對Girl最好的方法,只要想辦法賄賂了Girl的父母,并把Boy交給他。那么我們就可以輕松的和Girl來Kiss了??磥韼浊陚鹘y(tǒng)的父母之命還真是有用哦。至少Boy和Girl不用自己瞎忙乎了。 這就是IOC,將對象的創(chuàng)建和獲取提取到外部。由外部容器提供需要的組件。 我們知道好萊塢原則:“Do not call us, we will call you.” 意思就是,You, girlie, do not call the boy. We will feed you a boy。 我們還應(yīng)該知道依賴倒轉(zhuǎn)原則即 Dependence Inversion Princinple,DIP。Eric Gamma說,要面向抽象編程。面向接口編程是面向?qū)ο蟮暮诵摹=M件應(yīng)該分為兩部分,即Service, 所提供功能的聲明Implementation, Service的實(shí)現(xiàn)好處是:多實(shí)現(xiàn)可以任意切換,防止 “everything depends on everything” 問題即具體依賴于具體。所以,我們的Boy應(yīng)該是實(shí)現(xiàn)Kissable接口。這樣一旦Girl不想kiss可惡的Boy的話,還可以kiss可愛的kitten和慈祥的grandmother。二、IOC的type IoC的Type指的是Girl得到Boy的幾種不同方式。我們逐一來說明。 IOC type 0:不用IOCpublic class Girl implements Servicable private Kissable kissable; public Girl() kissable = new Boy(); public void kissYourKissable() kissable.kiss(); Girl自己建立自己的Boy,很難更換,很難共享給別人,只能單獨(dú)使用,并負(fù)責(zé)完全的生命周期。 IOC type 1,先看代碼:public class Girl implements Servicable Kissable kissable; public void service(ServiceManager mgr) kissable = (Kissable) mgr.lookup(“kissable”); public void kissYourKissable() kissable.kiss(); 這種情況出現(xiàn)于Avalon Framework。一個(gè)組件實(shí)現(xiàn)了Servicable接口,就必須實(shí)現(xiàn)service方法,并傳入一個(gè)ServiceManager。其中會(huì)含有需要的其它組件。只需要在service方法中初始化需要的Boy。 另外,J2EE中從Context取得對象也屬于type 1。 它依賴于配置文件 IOC type 2:public class Girl private Kissable kissable; public void setKissable(Kissable kissable) this.kissable = kissable; public void kissYourKissable() kissable.kiss(); Type 2出現(xiàn)于Spring Framework,是通過JavaBean的set方法來將需要的Boy傳遞給Girl。它必須依賴于配置文件。 IOC type 3public class Girl private Kissable kissable; public Girl(Kissable kissable) this.kissable = kissable; public void kissYourKissable() kissable.kiss(); 這就是PicoContainer的組件 。通過構(gòu)造函數(shù)傳遞Boy給Girl。PicoContainer container = new DefaultPicoContainer();container.registerComponentImplementation(Boy.class);container.registerComponentImplementation(Girl.class);Girl girl = (Girl) container.getComponentInstance(Girl.class);girl.kissYourKissable(); 關(guān)于PicoContainer,作者后續(xù)文章會(huì)詳細(xì)介紹。作者語: Well,以上的這些理論部分有些已經(jīng)有了新的定義了。過些天我會(huì)再寫一些文章具體說明。比如,原來的三種type結(jié)構(gòu)現(xiàn)在已經(jīng)重新定義為依賴注射的許多層次。IoC很年輕,還在發(fā)展。伴隨著IOC的發(fā)展,AOP,COP,SOP等等都在不斷的發(fā)展。作為程序員,隨時(shí)關(guān)注著新的思想的發(fā)展是一件很輕松愉快的事情。有沒有人愿意和我一起探討學(xué)習(xí)共同進(jìn)步呀!參考資料 1 本文主要插圖及文字來源于ThoughtWorks公司的Jon Tirsn 與 Aslak Hellesy(PicoContainer的兩位開發(fā)者),2003年在Java Polis的演講PPT。有刪改。7、闡述Hibernate的延遲加載機(jī)制?Hibernate和延遲加載Hibernate對象關(guān)系映射提供了兩種對象初始化模式:延遲加載和非延遲加載。非延遲加載在加載時(shí)獲取對象本身以及它關(guān)聯(lián)的所有對象。這可能導(dǎo)致在獲取一個(gè)實(shí)例時(shí),執(zhí)行成百上千的select語句。當(dāng)使用雙向關(guān)聯(lián)時(shí),這個(gè)問題被放大,常常出現(xiàn)初始化請求時(shí),整個(gè)數(shù)據(jù)庫都被載入。顯然檢查每個(gè)對象的關(guān)系,并手工刪除他們會(huì)費(fèi)點(diǎn)事,但最終我們可能會(huì)因此丟失使用ORM工具的優(yōu)勢。一個(gè)明細(xì)的解決方式是使用hibernate提供的延遲載入機(jī)制。這種初始化策略在類成員被訪問時(shí)只載入它的一個(gè)對象的一對多和多對多關(guān)系。對開發(fā)人員來說,這種方式是透明的,并且只有最少數(shù)量的請求發(fā)生,這樣就獲得了最佳的性能。這種技術(shù)的一個(gè)缺點(diǎn)是延遲載入要求當(dāng)對象還在使用中時(shí),Hibernate的Session必須保持打開狀態(tài)。當(dāng)嘗試通過DAO模式抽象持久層時(shí),這會(huì)引起一個(gè)重要問題。為了充分地抽象持久層,所有的數(shù)據(jù)庫邏輯,包括打開、關(guān)閉Session都不能在應(yīng)用層出現(xiàn)。最常見的是,這些邏輯隱藏在DAO的實(shí)現(xiàn)類中??焖俸筒钜恍┑姆桨甘牵罕苊獠捎肈AO模式,在應(yīng)用層中包含數(shù)據(jù)連接的邏輯。這在小應(yīng)用中是可行的,但在大系統(tǒng)中,這會(huì)是一個(gè)設(shè)計(jì)缺陷,它損害了應(yīng)用的擴(kuò)展性。8、設(shè)置本用戶每小時(shí)第15,30,59分鐘都將目錄aint/info/log及目錄下所有文件大小記錄到日志文件/tmp/checkdir.log中。9、查看所有oracle用戶的進(jìn)程有哪些?10、列出目錄/usr/lib下所有文件,包括子目錄及子目錄下文件11、查找目錄/var/adm 下是否有文件messages, 如果有的話同時(shí)列出其文件大小,日期等屬性。三、編程題1. 一個(gè)字符串中可能包含a-z中的多個(gè)字符,字符也可能重復(fù),例如: String data = “ aabcdexmkduyruieiopxzkkkasdfjxjdsds”;寫一個(gè)程序,對于給定一個(gè)這樣的字符串
溫馨提示
- 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)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 全球石油市場供需格局演變與2025年價(jià)格趨勢研究報(bào)告
- 房屋修復(fù)工程施工方案
- 檢驗(yàn)方法驗(yàn)證表
- 2025-2030中國銅鋁復(fù)合排行業(yè)產(chǎn)銷規(guī)模與投資效益預(yù)測報(bào)告
- 2025-2030中國蘋果酸氯波必利行業(yè)發(fā)展現(xiàn)狀與盈利前景預(yù)測報(bào)告
- 化學(xué)礦能源回收與利用技術(shù)探索考核試卷
- 半導(dǎo)體器件的表面等離子體共振特性考核試卷
- 家電銷售數(shù)據(jù)分析與預(yù)測模型構(gòu)建考核試卷
- 家用紡織品環(huán)保檢測技術(shù)發(fā)展考核試卷
- 游戲設(shè)備制造行業(yè)市場分析及技術(shù)發(fā)展研究
- 設(shè)備技改項(xiàng)目管理制度
- 浙江萬泰公司安全設(shè)施試運(yùn)行總結(jié)報(bào)告
- 2025至2030中國天然水晶手鐲行業(yè)商業(yè)模式及發(fā)展前景與投資報(bào)告
- 關(guān)于教育減負(fù)的議論文
- 2025至2030年中國電力大數(shù)據(jù)行業(yè)市場動(dòng)態(tài)分析及發(fā)展前景研判報(bào)告
- 2025至2030年中國側(cè)背光源行業(yè)投資前景及策略咨詢報(bào)告
- (完整版)“安全生產(chǎn)月”安全生產(chǎn)知識競賽試題庫(答案)
- 2025至2030年中國叉車油缸行業(yè)市場發(fā)展調(diào)研及投資前景展望報(bào)告
- 汽車美容質(zhì)量管理制度
- 躁動(dòng)患者約束帶的使用及護(hù)理
- 云南省大理2025年八年級下學(xué)期語文期末模擬考試卷三套及答案
評論
0/150
提交評論