




版權(quán)說(shuō)明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡(jiǎn)介
1、一: 選擇題1. 關(guān)于以下程序代碼的說(shuō)明正確的是(D)1 class HasStatic2private static int x=100;3 public static void main(String args )4HasStatic hs1=newHasStatic( );5hs1.x+;6HasStatic hs2=newHasStatic( );7hs2.x+;8hs1=new HasStatic( );9hs1.x+;10HasStatic.x- -;11System.out.println(“ x=” +x);1213 A、 5 行不能通過(guò)編譯,因?yàn)橐昧怂接徐o態(tài)變量B、 10
2、行不能通過(guò)編譯,因?yàn)?x 是私有靜態(tài)變量C、 程序通過(guò)編譯,輸出結(jié)果為:x=103D、 程序通過(guò)編譯,輸出結(jié)果為:x=1022.下列關(guān)于 for 循環(huán)和 while 循環(huán)的說(shuō)法中哪個(gè)是正確的?(B )A while 循環(huán)能實(shí)現(xiàn)的操作, for 循環(huán)也都能實(shí)現(xiàn)B while 循環(huán)判斷條件一般是程序結(jié)果,for循環(huán)判斷條件一般是非程序結(jié)果C兩種循環(huán)任何時(shí)候都可替換D兩種循環(huán)結(jié)構(gòu)中都必須有循環(huán)體,循環(huán)體不能為空3.以下選項(xiàng)中循環(huán)結(jié)構(gòu)合法的是(C)A、 while (int i7) i+;“i is“+i);B、 int j=3;while(j)“ j is“+j);C、 int j=0;for(in
3、t k=0; j + k !=10; j+,k+)“ j is“+ j +“k is”+ k);D、 int j=0;do“j is“+j+);if (j = = 3) continue loop;while (j10);4.給出下面代碼段 , 哪行將引起一個(gè)編譯時(shí)錯(cuò)誤?(D)public class Test int n = 0;int m = 0;public Test(int a) m=a; public static void main(String arg) Test t1,t2;int j,k;j=3; k=5;t1=new Test();t2=new Test(k);A. 行1B
4、.行4C.行6D.行9下面的方法,當(dāng)輸入為 2的時(shí)候返回值是多少 ?( D )public int getValue(int i) int result = 0;switch (i) case 1:result = result + i;case 2:result = result + i * 2;case 3:result = result + i * 3;return result;A0B2C4D10二:簡(jiǎn)述題1、描述一下 JVM 加載 class文件的原理機(jī)制 ?JVM 中類的裝載是由 C lassLoader和它的子類來(lái)實(shí)現(xiàn)的 ,Java ClassLoader是一個(gè)重要的Java 運(yùn)
5、行時(shí)系統(tǒng)組件。它負(fù)責(zé)在運(yùn)行時(shí)查找和裝入類文件的類。2、heap 和stack 有什么區(qū)別。java 的內(nèi)存分為兩類, 一類是棧內(nèi)存, 一類是堆內(nèi)存。 棧內(nèi)存是指程序進(jìn)入一個(gè)方法時(shí),會(huì)為這個(gè)方法單獨(dú)分配一塊私屬存儲(chǔ)空間, 用于存儲(chǔ)這個(gè)方法內(nèi)部的局部變量,當(dāng)這個(gè)方法結(jié)束時(shí),分配給這個(gè)方法的棧會(huì)釋放,這個(gè)棧中的變量也將隨之釋放。堆是與棧作用不同的內(nèi)存, 一般用于存放不放在當(dāng)前方法棧中的那些數(shù)據(jù),例如,使用 new 創(chuàng)建的對(duì)象都放在堆里, 所以,它不會(huì)隨方法的結(jié)束而消失。 方法中的局部變量使用 final修飾后,放在堆中,而不是棧中。3、GC 是什么 ? 為什么要有GC?GC 是垃圾收集的意思 ( G
6、abage Collection),內(nèi)存處理是編程人員容易出現(xiàn)問(wèn)題的地方,忘記或者錯(cuò)誤的內(nèi)存回收會(huì)導(dǎo)致程序或系統(tǒng)的不穩(wěn)定甚至崩潰,Java 提供的 GC 功能可以自動(dòng)監(jiān)測(cè)對(duì)象是否超過(guò)作用域從而達(dá)到自動(dòng)回收內(nèi)存的目的,Java語(yǔ)言沒(méi)有提供釋放已分配內(nèi)存的顯示操作方法。4、列舉出一些常用的類,包,接口,請(qǐng)各舉5 個(gè)要讓人家感覺(jué)你對(duì)java ee開(kāi)發(fā)很熟, 所以,不能僅僅只列 core java中的那些東西, 要多列你在做 ssh 項(xiàng)目中涉及的那些東西。就寫你最近寫的那些程序中涉及的那些類。常用的類:BufferedReader BufferedWriterFileReader FileWirter
7、StringInteger, System, Class, List,HashMap常用的包:java.langjava.io java.util常用的接口: Remote List MapDocumentNodeList,Servlet,HttpServletRequest,HttpServletResponse,Transaction(Hibernate)、Session(Hibernate),HttpSessionjava 中有幾種類型的流? JDK 為每種類型的流提供了一些抽象類以供繼承,請(qǐng)說(shuō)出他們分別是哪些類?字節(jié)流,字符流。字節(jié)流繼承于InputStream OutputStrea
8、m,字符流繼承于InputStreamReaderOutputStreamWriter。在 java.io包中還有許多其他的流,主要是為了提高性能和使用方便。6、多線程有幾種實(shí)現(xiàn)方法?同步有幾種實(shí)現(xiàn)方法?多線程有兩種實(shí)現(xiàn)方法,分別是繼承Thread類與實(shí)現(xiàn) R unnable接口同步的實(shí)現(xiàn)方面有兩種,分別是 synchronized,wait與notify wait(): 使一個(gè)線程處于等待狀態(tài),并且釋放所持有的對(duì)象的lock 。sleep(): 使一個(gè)正在運(yùn)行的線程處于睡眠狀態(tài),是一個(gè)靜態(tài)方法,調(diào)用此方法要捕捉InterruptedException(中斷異常)異常。notify(): 喚醒
9、一個(gè)處于等待狀態(tài)的線程,注意的是在調(diào)用此方法的時(shí)候,并不能確切的喚醒一個(gè)等待狀態(tài)的線程,而是由JVM 確定喚醒哪個(gè)線程,而且不是按優(yōu)先級(jí)。Allnotity():某喚醒所有處入等待狀態(tài)的線程,注意并不是給所有喚醒線程一個(gè)對(duì)象的鎖,而是讓它們競(jìng)爭(zhēng)。7、說(shuō)一說(shuō)Servlet的生命周期 ?答:servlet 有良好的生存期的定義, 包括加載和實(shí)例化、 初始化、處理請(qǐng)求以及服務(wù)結(jié)束。 這個(gè)生存期由接口的 init,service 和 destroy 方法表達(dá)。Servlet 被服務(wù)器實(shí)例化后, 容器運(yùn)行其 init 方法,請(qǐng)求到達(dá)時(shí)運(yùn)行其 service 方法,service方法自動(dòng)派遣運(yùn)行與請(qǐng)求對(duì)應(yīng)
10、的doXXX 方法( doGet , doPost )等,當(dāng)服務(wù)器決定將實(shí)例銷毀的時(shí)候調(diào)用其 destroy 方法。web 容器加載 servlet ,生命周期開(kāi)始。 通過(guò)調(diào)用 servlet的 init() 方法進(jìn)行 servlet的初始化。通過(guò)調(diào)用 service() 方法實(shí)現(xiàn),根據(jù)請(qǐng)求的不同調(diào)用不同的do*() 方法。結(jié)束服務(wù),web 容 器調(diào)用servlet 的 destroy() 方法。8、說(shuō)出數(shù)據(jù)連接池的工作機(jī)制是什么?J2EE服務(wù)器啟動(dòng)時(shí)會(huì)建立一定數(shù)量的池連接,并一直維持不少于此數(shù)目的池連接。客戶端程序需要連接時(shí), 池驅(qū)動(dòng)程序會(huì)返回一個(gè)未使用的池連接并將其表記為忙。 如果當(dāng)前沒(méi)有
11、空 閑連接,池驅(qū)動(dòng)程序就新建一定數(shù)量的連接, 新建連接的數(shù)量有配置參數(shù)決定。 當(dāng)使用的池 連接調(diào)用完成后,池驅(qū)動(dòng)程序?qū)⒋诉B接表記為空閑,其他調(diào)用就可以使用這個(gè)連接。實(shí)現(xiàn)方式,返回的 Connection 是真正關(guān)連接,而是把它代理的是原始 Connection的代理,代理 ConnectionC onnection對(duì)象還回到連接池中。的close方法 不9、這段代碼有什么不足之處?try Connection conn = .;Statement stmt = .;ResultSet rs =stmt.executeQuery(select * from table1);while(rs.ne
12、xt() catch(Exception ex) 答:沒(méi)有 finally 語(yǔ)句來(lái)關(guān)閉各個(gè)對(duì)象,另外,使用 finally 之后, 要把變量的定義放在 try 語(yǔ) 句塊的外面,以便在 try 語(yǔ)句塊之外的 finally 塊中仍可以訪問(wèn)這些變量。10 、一個(gè)用戶具有多個(gè)角色, 請(qǐng)查詢出該表中具有該用戶的所有角色的其他用戶。select count(*) as num,tb.idfromtb,(select role from tbwhere id=xxx) as t1wheretb.role = t1.roleandtb.id != t1.idgroup bytb.id havingnum =
13、 select count(role)from tb where id=xxx;11 、一個(gè)用戶表中有一個(gè)積分字段, 假如數(shù)據(jù)庫(kù)中有100 多萬(wàn)個(gè)用戶,若要在每年第一天凌晨將積分清零,你將考慮什么,你將想什么辦法解決?alter table drop column score;alter table add colunm score int;可能會(huì)很快, 但是需要試驗(yàn), 試驗(yàn)不能拿真實(shí)的環(huán)境來(lái)操刀,并且要注意, 這樣的操作時(shí)無(wú)法回滾的, 在我的印象中, 只有 inert update delete 等D ML 語(yǔ)句才能回滾, 對(duì)于 create table,drop table ,alter
14、table 等 DDL 語(yǔ)句是不能回滾。解決方案一, update user set score=0;解決方案二,假設(shè)上面的代碼要執(zhí)行好長(zhǎng)時(shí)間,超出我們的容忍范圍,那我就 alter table user drop columnscore;alter table user add column score int。下面代碼實(shí)現(xiàn)每年的那個(gè)凌晨時(shí)刻進(jìn)行清零。Runnable runnable =new Runnable()public voidrun()clearDb();schedule(this,newDate(new Date().getYear()+1,0,0);schedule(runn
15、able,new Date(newDate().getYear()+1,0,1);12 、你對(duì) Spring的理解 , 什么是spring的 IOC AOP 。1.SSpring 提供了對(duì) IOC 良好支持, IOC 是一種編程思想,是一種架構(gòu)藝術(shù),利用這種思想prD可ie以譬如, Class Programmernp很ge好地Computer computer =null;n實(shí)c實(shí)public void code()現(xiàn)y現(xiàn)了模工塊I廠/Computercomputer = new IBMComputer();之n模/Computercomputer = beanfacotry.getComp
16、uter();間j式computer.write();e的的c解工t耦廠i。public voidsetComputer(Computer computer)puter= computer; 另外兩種方式都由依賴, 第一個(gè)直接依賴于目標(biāo)類, 第二個(gè)把依賴轉(zhuǎn)移到工廠上, 第三個(gè)徹 底與目標(biāo)和工廠解耦了。在 spring 的配置文件中配置片段如下: Spring 提供了對(duì) AOP 技術(shù)的良好封裝, AOP 稱為面向切面編程,就是系統(tǒng)中有很多各 不相干的類的方法,在這些眾多方法中要加入某種系統(tǒng)功能的代碼,例如,加入日志,加入權(quán)限判斷, 加入異常處理, 這種應(yīng)用稱為 AOP 。實(shí)現(xiàn) A OP 功能采用的是代理技術(shù),客戶端程序不再調(diào)用目標(biāo), 而調(diào)用代理類
溫馨提示
- 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ì)自己和他人造成任何形式的傷害或損失。
最新文檔
- 觀光農(nóng)業(yè)規(guī)劃
- 供熱項(xiàng)目可行性研究報(bào)告
- 區(qū)塊鏈技術(shù)在數(shù)字版權(quán)保護(hù)中的應(yīng)用指南
- 基礎(chǔ)設(shè)施建設(shè)項(xiàng)目可研報(bào)告
- 云倉(cāng)項(xiàng)目可行性研究報(bào)告
- 公司內(nèi)部規(guī)章制度培訓(xùn)教程
- 三基訓(xùn)練護(hù)理復(fù)習(xí)試題有答案
- 企業(yè)營(yíng)銷自動(dòng)化技術(shù)應(yīng)用及效果評(píng)估報(bào)告
- 主管護(hù)師內(nèi)科護(hù)理練習(xí)測(cè)試卷(一)
- 規(guī)范辦公室管理規(guī)章制度手冊(cè)
- GB/T 14541-2017電廠用礦物渦輪機(jī)油維護(hù)管理導(dǎo)則
- GB 10133-2014食品安全國(guó)家標(biāo)準(zhǔn)水產(chǎn)調(diào)味品
- 講題比賽游戲中的必勝策略問(wèn)題-(取棋子游戲)課件
- 旅游學(xué)概論李天元版復(fù)習(xí)總結(jié)
- 人教版八年級(jí)上歷史思維導(dǎo)圖課件
- 重慶大學(xué)介紹課件
- 江蘇省南京市2020年中考英語(yǔ)試題
- 《電氣裝配車間生產(chǎn)工序流程卡》中英文對(duì)譯版
- 四年級(jí)下冊(cè)英語(yǔ)課件:Unit 4 There are seven days in a week-Lesson 19人教精通版
- 加油站承重罐區(qū)安全風(fēng)險(xiǎn)及管理
- 拱涵計(jì)算書-6.0m-1m
評(píng)論
0/150
提交評(píng)論