- 相關(guān)推薦
java開發(fā)面試題型與技巧
篇一:Java軟件開發(fā)工程師面試題寶典
1、了解j2EE規(guī)范,選擇幾點進(jìn)行重點消化。
2、異常分類,一般性異常和運(yùn)行期異常,異常捕獲。
3、了解spring mvc框架,和struts mvc框架的區(qū)別。
4、要對spring和ibatis非常熟悉,必須,熟知。
5、應(yīng)適當(dāng)關(guān)注需求分析和產(chǎn)品方面的知識。
6、了解多線程相關(guān)知識
7、了解java5以及java6新特性
8、熟悉linux相關(guān)命令操作。
9、工廠模式,簡單工廠、抽象工廠的區(qū)別
10、動態(tài)代理模式
一、String,StringBuffer, StringBuilder 的區(qū)別是什么?String為什么是不可變的?
二、VECTOR,ARRAYLIST, LINKEDLIST的區(qū)別是什么?
三、HASHTABLE, HASGMAQ,TreeMap區(qū)別
四、ConcurrentMap和HashMap的區(qū)別
五、Tomcat,apache,jboss的區(qū)別
六、GET POST區(qū)別
七、SESSION, COOKIE區(qū)別
八、Servlet的生命周期
九、HTTP 報文包含內(nèi)容
十、Statement與PreparedStatement的區(qū)別,什么是SQL注入,如何防止SQL注入 十一、redirect, foward區(qū)別
十二、關(guān)于JAVA內(nèi)存模型,一個對象(兩個屬性,四個方法)實例化100次,現(xiàn)在內(nèi)存中的存儲狀態(tài),
幾個對象,幾個屬性,幾個方法。
十三、談?wù)凥ibernate的理解,一級和二級緩存的作用,在項目中Hibernate都是怎么使用緩存的
十四、反射講一講,主要是概念,都在哪需要反射機(jī)制,反射的性能,如何優(yōu)化 十五、談?wù)凥ibernate與Ibatis的區(qū)別,哪個性能會更高一些
十六、對Spring的理解,項目中都用什么?怎么用的?對IOC、和AOP的理解及實現(xiàn)原理
十七、線程同步,并發(fā)操作怎么控制
十八、描述struts的工作流程。
十九、Tomcat的session處理,如果讓你實現(xiàn)一個tomcatserver,如何實現(xiàn)session機(jī)制
二十、關(guān)于Cache(Ehcache,Memcached)
二一、sql的優(yōu)化相關(guān)問題
二二、oracle中 rownum與rowid的理解,一千條記錄我查200到300的記錄怎么查? 二三、如何分析ORACLE的執(zhí)行計劃?
二四、 DB中索引原理,種類,使用索引的好處和問題是什么?
二五、JVM垃圾回收實現(xiàn)原理。垃圾回收的線程優(yōu)先級。
二六、jvm 最大內(nèi)存設(shè)置。設(shè)置的原理。結(jié)合垃圾回收講講。
Java面試寶典
一. Java基礎(chǔ)部分..................................................................................................................... 8
1、一個".java"源文件中是否可以包括多個類(不是內(nèi)部類)?有什么限制? ...... 9
2、Java有沒有g(shù)oto? ....................................................................................................... 9
3、說說&和&&的區(qū)別。 ............................................................................................... 9
4、在JAVA中如何跳出當(dāng)前的多重嵌套循環(huán)? .......................................................... 9
5、switch語句能否作用在byte上,能否作用在long上,能否作用在String上? 10
6、short s1 = 1; s1 = s1 + 1;有什么錯? short s1 = 1; s1 += 1;有什么錯? ..................... 10
7、char型變量中能不能存貯一個中文漢字?為什么? ................................................ 10
8、用最有效率的方法算出2乘以8等於幾? ............................................................. 10
9、請設(shè)計一個一百億的計算器 ................................................................................... 11
10、使用final關(guān)鍵字修飾一個變量時,是引用不能變,還是引用的對象不能變?
......................................................................................................................................... 12
11、"=="和equals方法究竟有什么區(qū)別? ................................................................. 12
12、靜態(tài)變量和實例變量的區(qū)別? ............................................................................. 13
13、是否可以從一個static方法內(nèi)部發(fā)出對非static方法的調(diào)用? ........................ 14
14、Integer與int的區(qū)別 .............................................................................................. 14
15、Math.round(11.5)等於多少? Math.round(-11.5)等於多少? ................................... 14
16、下面的代碼有什么不妥之處? ............................................................................... 14
17、請說出作用域public,private,protected,以及不寫時的區(qū)別 ........................ 15
18、Overload和Override的區(qū)別。Overloaded的方法是否可以改變返回值的類型?
......................................................................................................................................... 15
19、構(gòu)造器Constructor是否可被override? ................................................................ 16
20、接口是否可繼承接口? 抽象類是否可實現(xiàn)(implements)接口? 抽象類是否可繼
承具體類(concrete class)? 抽象類中是否可以有靜態(tài)的main方法? ...................... 16
21、寫clone()方法時,通常都有一行代碼,是什么? ............................................. 16
22、面向?qū)ο蟮奶卣饔心男┓矫?................................................................................. 16
23、java中實現(xiàn)多態(tài)的機(jī)制是什么? ......................................................................... 18
24、abstract class和interface有什么區(qū)別? ................................................................. 18
25、abstract的method是否可同時是static,是否可同時是native,是否可同時是
synchronized? .................................................................................................................. 20
26、什么是內(nèi)部類?Static Nested Class 和 Inner Class的不同。 ........................... 20
27、內(nèi)部類可以引用它的包含類的成員嗎?有沒有什么限制? ............................. 22
28、Anonymous Inner Class (匿名內(nèi)部類) 是否可以extends(繼承)其它類,是否可
以implements(實現(xiàn))interface(接口)? ............................................................................ 22
29、super.getClass()方法調(diào)用 .......................................................................... 23
30、String是最基本的數(shù)據(jù)類型嗎? ............................................................................ 23
31、String s = "Hello";s = s + " world!";這兩行代碼執(zhí)行后,原始的String對象中的
內(nèi)容到底變了沒有? ..................................................................................................... 23
32、是否可以繼承String類? ....................................................................................... 24
33、String s = new String("xyz");創(chuàng)建了幾個String Object? 二者之間有什么區(qū)別?
......................................................................................................................................... 24
34、String 和StringBuffer的區(qū)別 ............................................................................... 25
35、如何把一段逗號分割的字符串轉(zhuǎn)換成一個數(shù)組? ............................................... 25
36、數(shù)組有沒有l(wèi)ength()這個方法? String有沒有l(wèi)ength()這個方法? .................... 26
37、下面這條語句一共創(chuàng)建了多少個對象:String s="a"+"b"+"c"+"d"; .................. 26
38、try {}里有一個return語句,那么緊跟在這個try后的finally {}里的code會不
會被執(zhí)行,什么時候被執(zhí)行,在return前還是后? .................................................... 26
39、下面的程序代碼輸出的結(jié)果是多少? ................................................................. 27
40、final, finally, finalize的區(qū)別。 .............................................................................. 29
41、運(yùn)行時異常與一般異常有何異同? ..................................................................... 29
42、error和exception有什么區(qū)別? ............................................................................. 29
43、Java中的異常處理機(jī)制的簡單原理和應(yīng)用。 ..................................................... 29
44、請寫出你最常見到的5個runtime exception。 ................................................... 30
45、JAVA語言如何進(jìn)行異常處理,關(guān)鍵字:throws,throw,try,catch,finally分別代表
什么意義?在try塊中可以拋出異常嗎? .................................................................. 30
46、java中有幾種方法可以實現(xiàn)一個線程?用什么關(guān)鍵字修飾同步方法? stop()和
suspend()方法為何不推薦使用? ................................................................................. 30
47、sleep() 和 wait() 有什么區(qū)別? ............................................................................. 31
48、同步和異步有何異同,在什么情況下分別使用他們?舉例說明。 ................. 34
49. 下面兩個方法同步嗎?(自己發(fā)明) .................................................................. 34
50、多線程有幾種實現(xiàn)方法?同步有幾種實現(xiàn)方法? ................................................. 34
51、啟動一個線程是用run()還是start()? . .................................................................. 35
52、當(dāng)一個線程進(jìn)入一個對象的一個synchronized方法后,其它線程是否可進(jìn)入此
對象的其它方法? ........................................................................................................... 35
53、線程的基本概念、線程的基本狀態(tài)以及狀態(tài)之間的關(guān)系 ................................. 35
54、簡述synchronized和java.util.concurrent.locks.Lock的異同 ? ........................ 36
55、設(shè)計4個線程,其中兩個線程每次對j增加1,另外兩個線程對j每次減少1。
寫出程序。 ..................................................................................................................... 38
56、子線程循環(huán)10次,接著主線程循環(huán)100,接著又回到子線程循環(huán)10次,接著
再回到主線程又循環(huán)100,如此循環(huán)50次,請寫出程序。 .................................... 40
57、介紹Collection框架的結(jié)構(gòu) .................................................................................. 45
58、Collection框架中實現(xiàn)比較要實現(xiàn)什么接口 ....................................................... 45
59、ArrayList和Vector的區(qū)別 .................................................................................... 45
60、HashMap和Hashtable的區(qū)別 .............................................................................. 46
61、List 和 Map 區(qū)別? ............................................................................................... 46
62、List, Set, Map是否繼承自Collection接口? ......................................................... 47
63、List、Map、Set三個接口,存取元素時,各有什么特點? ............................. 47
64、說出ArrayList,Vector, LinkedList的存儲性能和特性 ......................................... 48
65、去掉一個Vector集合中重復(fù)的元素 .................................................................... 48
66、Collection 和 Collections的區(qū)別。 ..................................................................... 48
67、Set里的元素是不能重復(fù)的,那么用什么方法來區(qū)分重復(fù)與否呢? 是用==還是
equals()? 它們有何區(qū)別? .............................................................................................. 48
68、你所知道的集合類都有哪些?主要方法? ......................................................... 49
69、兩個對象值相同(x.equals(y) == true),但卻可有不同的hash code,這句話對不
對? ................................................................................................................................... 49
70、TreeSet里面放對象,如果同時放入了父類和子類的實例對象,那比較時使用的是父類的compareTo方法,還是使用的子類的compareTo方法,還是拋異常!
......................................................................................................................................... 50
71、說出一些常用的類,包,接口,請各舉5個 ..................................................... 51
72、java中有幾種類型的流?JDK為每種類型的流提供了一些抽象類以供繼承,請
說出他們分別是哪些類? ............................................................................................. 51
73、字節(jié)流與字符流的區(qū)別 ......................................................................................... 51
74、什么是java序列化,如何實現(xiàn)java序列化?或者請解釋Serializable接口的作
用。 ................................................................................................................................. 53
75、描述一下JVM加載class文件的原理機(jī)制? ....................................................... 53
76、heap和stack有什么區(qū)別。 .................................................................................. 53
77、GC是什么? 為什么要有GC? .............................................................................. 54
78、垃圾回收的優(yōu)點和原理。并考慮2種回收機(jī)制。 ............................................. 54
79、垃圾回收器的基本原理是什么?垃圾回收器可以馬上回收內(nèi)存嗎?有什么辦法
主動通知虛擬機(jī)進(jìn)行垃圾回收? ................................................................................. 54
80、什么時候用assert。 ............................................................................................... 54
81、java中會存在內(nèi)存泄漏嗎,請簡單描述。 ......................................................... 55
82、能不能自己寫個類,也叫java.lang.String? ....................................................... 58
83. Java代碼查錯................................................................................................................... 59
二. 算法與編程 ...................................................................................................................... 63
1、編寫一個程序,將a.txt文件中的單詞與b.txt文件中的單詞交替合并到c.txt文件中,a.txt文件中的單詞用回車符分隔,b.txt文件中用回車或空格進(jìn)行分隔。 . 63
2、編寫一個程序,將d:java目錄下的所有.java文件復(fù)制到d:jad目錄下,并將原
來文件的擴(kuò)展名從.java改為.jad。 .............................................................................. 64
3、編寫一個截取字符串的函數(shù),輸入為一個字符串和字節(jié)數(shù),輸出為按字節(jié)截取的字符串,但要保證漢字不被截取半個,如“我ABC”,4,應(yīng)該截取“我AB”,輸入“我ABC漢DEF”,6,應(yīng)該輸出“我ABC”,而不是“我ABC+漢的半個”。
......................................................................................................................................... 66
4、有一個字符串,其中包含中文字符、英文字符和數(shù)字字符,請統(tǒng)計和打印出各
個字符的個數(shù)。 ............................................................................................................. 67
5、說明生活中遇到的二叉樹,用java實現(xiàn)二叉樹 .................................................. 68
6、從類似如下的文本文件中讀取出所有的姓名,并打印出重復(fù)的姓名和重復(fù)的次
數(shù),并按重復(fù)次數(shù)排序: ............................................................................................. 73
7、寫一個Singleton出來。 ......................................................................................... 77
8、遞歸算法題1 ............................................................................................................ 79
9、遞歸算法題2 ............................................................................................................ 80
10、排序都有哪幾種方法?請列舉。用JAVA實現(xiàn)一個快速排序。 ...................... 81
11、有數(shù)組a[n],用java代碼將數(shù)組元素順序顛倒 ................................................. 82
12.金額轉(zhuǎn)換,阿拉伯?dāng)?shù)字的金額轉(zhuǎn)換成中國傳統(tǒng)的形式如:(¥1011)->(一千
零一拾一元整)輸出。 ................................................................................................. 83
三. html&JavaScript&ajax部分 ............................................................................................. 84
1. 判斷第二個日期比第一個日期大 ............................................................................ 84
2. 用table顯示n條記錄,每3行換一次顏色,即1,2,3用紅色字體,4,5,6
用綠色字體,7,8,9用紅顏色字體。 ...................................................................... 85
3、HTML 的 form 提交之前如何驗證數(shù)值文本框的內(nèi)容全部為數(shù)字? 否則的話提
示用戶并終止提交? ....................................................................................................... 86
4、請寫出用于校驗HTML文本框中輸入的內(nèi)容全部為數(shù)字的javascript代碼 .... 86
5、說說你用過那些ajax技術(shù)和框架,說說它們的區(qū)別 .......................................... 87
四. Java web部分 ................................................................................................................... 87
1、Tomcat的優(yōu)化經(jīng)驗 .................................................................................................. 87
2、HTTP請求的GET與POST方式的區(qū)別 .............................................................. 87
3、解釋一下什么是servlet; .......................................................................................... 87
4、說一說Servlet的生命周期? .................................................................................... 87
5、Servlet的基本架構(gòu) .................................................................................................. 88
6、SERVLET API中forward() 與redirect()的區(qū)別? ............................................... 88
7、什么情況下調(diào)用doGet()和doPost()? ................................................................... 88
8、Request對象的主要方法: ..................................................................................... 88
9、forward 和redirect的區(qū)別 ...................................................................................... 89
10、request.getAttribute() 和 request.getParameter() 有何區(qū)別?............................... 89
11. jsp有哪些內(nèi)置對象?作用分別是什么? 分別有什么方法? ................................ 89
12. jsp有哪些動作?作用分別是什么? .......................................................................... 90
13、JSP的常用指令 ...................................................................................................... 90
14. JSP中動態(tài)INCLUDE與靜態(tài)INCLUDE的區(qū)別? ............................................. 91
15、兩種跳轉(zhuǎn)方式分別是什么?有什么區(qū)別? ............................................................. 91
16、頁面間對象傳遞的方法 ......................................................................................... 91
17、JSP和Servlet有哪些相同點和不同點,他們之間的聯(lián)系是什么? ................. 91
18、MVC的各個部分都有那些技術(shù)來實現(xiàn)?如何實現(xiàn)? ........................................... 91
19、我們在web應(yīng)用開發(fā)過程中經(jīng)常遇到輸出某種編碼的字符,如iso8859-1等,
如何輸出一個某種編碼的字符串? ............................................................................. 92
20.現(xiàn)在輸入n個數(shù)字,以逗號,分開;然后可選擇升或者降序排序;按提交鍵就
在另一頁面顯示按什么排序,結(jié)果為,提供reset .................................................... 92
五. 數(shù)據(jù)庫部分 ...................................................................................................................... 92
1、用兩種方式根據(jù)部門號從高到低,工資從低到高列出每個員工的信息。 ....... 92
2、列出各個部門中工資高于本部門的平均工資的員工數(shù)和部門號,并按部門號排
序..................................................................................................................................... 93
3、存儲過程與觸發(fā)器必須講,經(jīng)常被面試到? ......................................................... 93
4、數(shù)據(jù)庫三范式是什么? ............................................................................................. 95
5、說出一些數(shù)據(jù)庫優(yōu)化方面的經(jīng)驗? ......................................................................... 96
6、union和union all有什么不同? ............................................................................... 97
7.分頁語句 ...................................................................................................................... 98
8.用一條SQL語句 查詢出每門課都大于80分的學(xué)生姓名................................... 101
9.所有部門之間的比賽組合 ........................................................................................ 102
10.每個月份的發(fā)生額都比101科目多的科目 .......................................................... 102
11.統(tǒng)計每年每月的信息 .............................................................................................. 104
12.顯示文章標(biāo)題,發(fā)帖人、最后回復(fù)時間 .............................................................. 105
篇二:Java面試題—WEB開發(fā)必看
以前的收藏,估計很少有這么全的面試題集了^_^
基礎(chǔ)知識:
1. C++或Java中的異常處理機(jī)制的簡單原理和應(yīng)用。 當(dāng)JAVA程序違反了JAVA的語義規(guī)則時,JAVA虛擬機(jī)就會將發(fā)生的錯誤表示為一個異常。違反語義規(guī)則包括2種情況。一種是JAVA類庫內(nèi)置的語義檢查。例如數(shù)組下標(biāo)越界,會引發(fā)IndexOutOfBoundsException;訪問null的對象時會引發(fā)NullPointerException。另一種情況就是JAVA允許程序員擴(kuò)展這種語義檢查,程序員可以創(chuàng)建自己的異常,并自由選擇在何時用throw關(guān)鍵字引發(fā)異常。所有的異常都是java.lang.Thowable的子類。
2.Java的接口和C++的虛類的相同和不同處。
由于Java不支持多繼承,而有可能某個類或?qū)ο笠褂梅謩e在幾個類或?qū)ο罄锩娴姆椒ɑ驅(qū)傩,現(xiàn)有的單繼承機(jī)制就不能滿足要求。與繼承相比,接口有更高的靈活性,因為接口中沒有任何實現(xiàn)代碼。當(dāng)一個類實現(xiàn)了接口以后,該類要實現(xiàn)接口里面所有的方法和屬性,并且接口里面的屬性在默認(rèn)狀態(tài)下面都是publicstatic,所有方法默認(rèn)情況下是public.一個類可以實現(xiàn)多個接口。
3.垃圾回收的優(yōu)點和原理。并考慮2種回收機(jī)制。
Java語言中一個顯著的特點就是引入了垃圾回收機(jī)制,使c++程序員最頭疼的內(nèi)存管理的問題迎刃而解,它使得Java程序員在編寫程序的時候不再需要考慮內(nèi)存管理。由于有個垃圾回收機(jī)制,Java中的對象不再有“作用域”的概念,只有對象的引用才有“作用域”。垃圾回收可以有效的防止內(nèi)存泄露,有效的使用可以使用的內(nèi)存。垃圾回收器通常是作為一個單獨的低級別的線程運(yùn)行,不可預(yù)知的情況下對內(nèi)存堆中已經(jīng)死亡的或者長時間沒有使用的對象進(jìn)行清楚和回收,程序員不能實時的調(diào)用垃圾回收器對某個對象或所有對象進(jìn)行垃圾回收;厥諜C(jī)制有分代復(fù)制垃圾回收和標(biāo)記垃圾回收,增量垃圾回收。
4.請說出你所知道的線程同步的方法。
wait():使一個線程處于等待狀態(tài),并且釋放所持有的對象的lock。
sleep():使一個正在運(yùn)行的線程處于睡眠狀態(tài),是一個靜態(tài)方法,調(diào)用此方法要捕捉InterruptedException異常。
notify():喚醒一個處于等待狀態(tài)的線程,注意的是在調(diào)用此方法的時候,并不能確切的喚醒某一個等待狀態(tài)的線程,而是由JVM確定喚醒哪個線程,而且不是按優(yōu)先級。
Allnotity():喚醒所有處入等待狀態(tài)的線程,注意并不是給所有喚醒線程一個對象的鎖,而是讓它們競爭。
5.請講一講析構(gòu)函數(shù)和虛函數(shù)的用法和作用。
6.Error與Exception有什么區(qū)別?
Error表示系統(tǒng)級的錯誤和程序不必處理的異常,
Exception表示需要捕捉或者需要程序進(jìn)行處理的異常。
7.在java中一個類被聲明為final類型,表示了什么意思?
表示該類不能被繼承,是頂級類。
8.描述一下你最常用的編程風(fēng)格。
9.heap和stack有什么區(qū)別。
棧是一種線形集合,其添加和刪除元素的操作應(yīng)在同一段完成。棧按照后進(jìn)先出的方式進(jìn)行處理。
堆是棧的一個組成元素
10.如果系統(tǒng)要使用超大整數(shù)(超過long長度范圍),請你設(shè)計一個數(shù)據(jù)結(jié)構(gòu)來存儲這種超大型數(shù)字以及設(shè)計一種算法來實現(xiàn)超大整數(shù)加法運(yùn)算)。
publicclassBigInt()
{
int[]ArrOne=newArrOne[1000];
StringintString="";
publicint[]Arr(Strings)
{
intString=s;
for(inti=0;i<ArrOne.leght;i++)
{
11.如果要設(shè)計一個圖形系統(tǒng),請你設(shè)計基本的圖形元件(Point,Line,Rectangle,Triangle)的簡單實現(xiàn)
12,談?wù)刦inal,finally,finalize的區(qū)別。
final—修飾符(關(guān)鍵字)如果一個類被聲明為final,意味著它不能再派生出新的子類,不能作為父類被繼承。因此一個類不能既被聲明為abstract的,又被聲明為final的。將變量或方法聲明為final,可以保證它們在使用中不被改變。被聲明為final的變量必須在聲明時給定初值,而在以后的引用中只能讀取,不可修改。被聲明為final的方法也同樣只能使用,不能重載。
finally—再異常處理時提供finally塊來執(zhí)行任何清除操作。如果拋出一個異常,那么相匹配的catch子句就會執(zhí)行,然后控制就會進(jìn)入finally塊(如果有的話)。
finalize—方法名。Java技術(shù)允許使用finalize()方法在垃圾收集器將對象從內(nèi)存中清除出去之前做必要的清理工作。這個方法是由垃圾收集器在確定這個對象沒有被引用時對這個對象調(diào)用的。它是在Object類中定義的,因此所有的類都繼承了它。子類覆蓋finalize()方法以整理系統(tǒng)資源或者執(zhí)行其他清理工作。finalize()方法是在垃圾收集器刪除對象之前對這個對象調(diào)用的。
13,AnonymousInnerClass(匿名內(nèi)部類)是否可以extends(繼承)其它類,是否可以implements(實現(xiàn))interface(接口)?
匿名的內(nèi)部類是沒有名字的內(nèi)部類。不能extends(繼承)其它類,但一個內(nèi)部類可以作為一個接口,由另一個內(nèi)部類實現(xiàn)。
14,StaticNestedClass和InnerClass的不同,說得越多越好(面試題有的很籠統(tǒng))。
NestedClass(一般是C++的說法),InnerClass(一般是JAVA的說法)。Java內(nèi)部類與C++嵌套類最大的不同就在于是否有指向外部的引用上。具體可見
http://www.frontfree.net/articles/services/view.asp?id=704&page=1
注:靜態(tài)內(nèi)部類(InnerClass)意味著1創(chuàng)建一個static內(nèi)部類的對象,不需要一個外部類對象,2不能從一個static內(nèi)部類的一個對象訪問一個外部類對象
第四,&和&&的區(qū)別。
&是位運(yùn)算符。&&是布爾邏輯運(yùn)算符。
15,HashMap和Hashtable的區(qū)別。
都屬于Map接口的類,實現(xiàn)了將惟一鍵映射到特定的值上。
HashMap類沒有分類或者排序。它允許一個null鍵和多個null值。
Hashtable類似于HashMap,但是不允許null鍵和null值。它也比HashMap慢,因為它是同步的。
16,Collection和Collections的區(qū)別。
篇三:JAVA網(wǎng)站開發(fā)工程師面試題
JAVA_WEB開發(fā)人員面試題及答案
面試人: 面試時間:
一.選擇題(每題1分,共20分)
1. jsp 有幾個內(nèi)置對象?( c )(單選)
A 5個 B 6個 C 9個 D 8個
2. 在JAVA中,如何跳出當(dāng)前的多重嵌套循環(huán)?( ab) (多選)
A break B return C forward D finally
3. 四種會話跟蹤技術(shù),哪個范圍最大?(d ) (單選)
A page B request C session D application
4. java中有幾種方法可以實現(xiàn)一個線程?(b ) (單選)
A 1種 B 2種 C 3種 D 4種
5. 同步有幾種實現(xiàn)方法 ( b) (單選)
A 4種 B 2種 C 3種 D 1種
6. xml有哪些解析技術(shù)? ( abcd ) (多選)
A DOM B SAX C STAX D JDOM
7. 下列說法正確的是( bd)(多選)
A 構(gòu)造器Constructor可被繼承
B String類不可以繼承
C 判斷兩個對象值相同用“==”
D char型變量中能不能存貯一個中文漢字
8. 下列關(guān)于線程說法正確的是(abc )(多選)
A 調(diào)用sleep不會釋放對象鎖。
B 調(diào)用wait方法導(dǎo)致本線程放棄對象鎖
C 當(dāng)一個線程進(jìn)入一個對象的一個synchronized方法后,其它線程不可進(jìn)入此對象的其它 方法
D notify():喚醒全部處于等待狀態(tài)的線程。
9. 給定JSP程序源碼如下,該JSP運(yùn)行后輸出的結(jié)果是(b )。(單選)
<%int count="1;%">
Count:<%=>
A Count:1 B Count:2 C 1:2 D Count:
10.在J2EE中的一個JSP文件中,有表達(dá)式<%=2>,它將輸出( b )(單選)
a)2 3 b)5 c)23 d)不會輸出,因為表達(dá)式是錯誤的
11.在J2EE中,編寫Servlet過濾器時,(c )接口用于調(diào)用過濾器鏈中的下一個過濾器。(單選)
a)Filter b)FilterConfig c)FilterChain d)Servlet
12) 關(guān)于視圖的描述正確的是( c ) (單選)
a) 視圖是一種特殊的表,它存儲了用戶定制的數(shù)據(jù)。
b) 視圖僅用于用戶進(jìn)行查詢,不可以通過視圖對數(shù)據(jù)進(jìn)行修改。
c) 在sql server中可以通過用T-sql語句來創(chuàng)建,也可以通過企業(yè)管理器。
d) 創(chuàng)建視圖只能操作本機(jī)器上的數(shù)據(jù)庫表。
13)STRUTS框架中,( c)類在視圖層和控制層之間傳遞HTML表單數(shù)據(jù)。(單選) a) Action b) ActionForward c) ActionForm d) ActionServlet
18)Struts控制器的主要任務(wù)是接受用戶請求、根據(jù)用戶請求調(diào)用對應(yīng)的模型組件、獲取業(yè)務(wù)邏輯執(zhí)行結(jié)果的根據(jù)處理結(jié)果選擇適合的視圖組件返回給用戶,實現(xiàn)Struts控制器的類中不包括(c )。(單選)
a) ActionServlet b) Action c) ActionForm d) ActionForward
14) 以下關(guān)于SessionFactory的說法哪些正確?( bc )(多選)
A) 對于每個數(shù)據(jù)庫事務(wù),應(yīng)該創(chuàng)建一個SessionFactory對象
B) 一個SessionFactory對象對應(yīng)一個數(shù)據(jù)庫存儲源。
C) SessionFactory是重量級的對象,不應(yīng)該隨意創(chuàng)建。如果系統(tǒng)中只有一個數(shù)據(jù)庫存儲源只需要創(chuàng)建一個。
D) SessionFactory的load()方法用于加載持久化對象
15) 下面那些是Hibernate的查詢方式(abc )(多選)
A) sql B) hql C) Criteria
18) 以下數(shù)據(jù)結(jié)構(gòu)不屬于線性結(jié)構(gòu)的是( c )(單選)
A) 隊列 B) 線性表 C) 二叉樹 D) 棧
16) 下列是文件讀寫的類是( ac )(多選)
A) File Reader B) File C) FileWriter D) InputStream
17) 數(shù)據(jù)庫技術(shù)中的“臟數(shù)據(jù)',是指(c )的數(shù)據(jù)。(單選)
A) 錯誤 B 回返 C 未提交 D 未提交的隨后又被撤消
18)在計算機(jī)中,—個字節(jié)是由多少個二進(jìn)制位組成的( b) (單選)
A). 4 B). 8 C). 16 D). 24
19. 下列不屬于面向?qū)ο蟮姆椒ㄊ牵?d )(單選)
A). 對象 B). 類 C). 繼承 D).過程調(diào)用
29.設(shè)正x、y均為整型變量,且x=10 y=3,則以下語句printf("%d,%d ",x--,--y); 的輸出結(jié)果是( d )(單選)
A).10,3 B). 9,3 C). 9,2 D).10,2
二. 填空(每空1分,共10分)
1. String s = new String("xyz");創(chuàng)建了__2__個String 對象?
2. Math.round(9.5)等於__10___ Math.round(-9.5)等於__-9____
3. try {}里有一個return語句,那么緊跟在這個try后的finally {}里的code會被執(zhí)行,什么時候被執(zhí)行,在return____前_____ ( 前還是后?)
4. 如何現(xiàn)實servlet的單線程模式 ______<%@ page="" isthreadsafe="false"> _________
5. 類變量必須帶的修飾符是 ______ static _________
6. final類可以修飾在屬性 , 方法 和 ___類___ 前面
7. Java默認(rèn)的包是______ java.lang.*_________
8. Hibernate里面怎樣實現(xiàn)類與類之間的關(guān)系__________表映射_______________
9. Socket 編程服務(wù)器端用____ serverSocket ____類來創(chuàng)建socket對象。
三. 判斷題(每題2分,共10分)
1. 依賴注入即是“面向接口”的編程。錯
2. Overload和Override都是java多態(tài)的不同體現(xiàn)形式。對
3. String是最基本的數(shù)據(jù)類型。 錯
4.啟動一個線程是用start。 對
5. 接口可以繼承接口。 對
四.簡答題(每題5分,共30分)
1、網(wǎng)頁設(shè)計采用div css有什么好處?
答:布局實現(xiàn)了表現(xiàn)與內(nèi)容的分離,大大縮減頁面代碼,符合W3C的標(biāo)準(zhǔn),兼容性更好;易于后期網(wǎng)站的更新、維護(hù);SEO的優(yōu)化:對搜索引擎更加友好,更容易被搜索引擎收錄。
2、前端頁面有哪三層構(gòu)成,分別是什么?作用是什么?
答:網(wǎng)頁分成三個層次,即:結(jié)構(gòu)層、表示層、行為層。
網(wǎng)頁的結(jié)構(gòu)層(structural layer)由HTML或 XHTML之類的標(biāo)記語言負(fù)責(zé)創(chuàng)建。標(biāo)簽,也就是那些出現(xiàn)在尖括號里的單詞,對網(wǎng)頁內(nèi)容的語義含義做出了描述,但這些標(biāo)簽不包含任何關(guān)于如何顯示有關(guān)內(nèi)容的信息。例如,P 標(biāo)簽表達(dá)了這樣一種語義:“這是一個文本段!
網(wǎng)頁的表示層(presentation layer)由CSS負(fù)責(zé)創(chuàng)建。CSS 對“如何顯示有關(guān)內(nèi)容”的問題做出了回答。
網(wǎng)頁的行為層(behavior layer)負(fù)責(zé)回答“內(nèi)容應(yīng)該如何對事件做出反應(yīng)”這一問題。這是 Javascript 語言和 DOM 主宰的領(lǐng)域。
3、如何區(qū)別display:none與visibility:hidden?
答:相同的是display:none與visibility:hidden都可以用來隱藏某個元素;
不同的是display:none在隱藏元素的時候,將其占位空間也去掉;而visibility:hidden只是隱藏了內(nèi)容而已,其占位空間仍然保留。
4. 購物網(wǎng)站的主色調(diào)應(yīng)該是什么樣色?交友網(wǎng)站?體育網(wǎng)站?軟件網(wǎng)站?年輕的互聯(lián)網(wǎng)? 答:購物:暖色;交友:粉紅之類的;體育:酷一點;軟件公司:無所謂;年輕互聯(lián)網(wǎng):有朝氣的顏色,比如綠色。
5. 一個網(wǎng)站最多有幾種色彩
答:一到兩各種主色彩。
6.如果背景是黑色,那么字體用什么顏色能突出字體,且不顯得刺眼?
答:紅色。
五.編程操作題(每題6分,30分)
注:有上機(jī)機(jī)會上機(jī)操作,沒有就手動把代碼寫出來;
1. 一個表td中的部分Id有多個記錄,把所有有多個記錄的id查出來,并顯示共有多少條 記錄數(shù)。
2.寫出冒泡排序的實現(xiàn)
答:代碼如下:
public void fun9(){
int[] a = {1,3,5,61,2,123,12,}
Conica.print(a);
for(int i=0 ; i<a.length-1 ; i ){
for(int j=0 ; j<a.length-i-1 ; j )
{
if(a[j]>a[j 1]){
int temp = a[j];
a[j] = a[j 1];
a[j 1] = temp;
}
}
}
}
3 編程:編寫一個截取字符串的函數(shù),輸入為一個字符串和字節(jié)數(shù),輸出為按字節(jié)截取的字符串。 但是要保證漢字不被截半個,如“我ABC”4,應(yīng)該截為“我AB”,輸入“我ABC漢DEF”,應(yīng)該輸出為“我ABC”而不是“我ABC 漢的半個”。
答:代碼如下:
package test;
class SplitString {
String SplitStr;
int SplitByte;
public SplitString(String str,intbytes) {
SplitStr=str;
SplitByte=bytes;
System.out.println("TheString is:′" SplitStr "′;SplitBytes=" SplitByte);
}
public void SplitIt() {
int loopCount;
loopCount=(SplitStr.length()%SplitByte==0)?(SplitStr.length()/SplitByte):(SplitStr.length()/SplitByte
1);
System.out.println("WillSplit into " loopCount);
for (int i=1;i<=loopCount ;i ) {
if (i==loopCount){
System.out.println(SplitStr.substring((i-1)*SplitByte,SplitStr.length()));
}
else {
System.out.println(SplitStr.substring((i-1)*SplitByte,(i*SplitByte)));
}
}
}
public static void main(String[]args) {
SplitString ss = newSplitString("test中dd文dsaf中男大3443n中國43中國人
0ewldfls=103",4);
ss.SplitIt();
}
}
注:另外關(guān)于美工操作,如果有photoshop等軟件可以任選擇兩題考下:
1. 手寫 html 能力
描述一個不規(guī)則表格,一定要有跨列和跨行的,讓他把 html 代碼寫出來;
2.讓他用 Photoshop 或 Fireworks 設(shè)計一個頁面布局,或者指定一個效果(比如半透明的按鈕),讓他畫出來,在或者,提供一幅人物照片,要求他摳掉背景,這是平面軟件能力的一種體現(xiàn)方式;
3. 如果要涉及 Flash,讓他做一個兩種形狀(方形、圓圈)的漸變,要求過渡平滑、美觀,新手都直接用 shapemotion,很難看,高手知道加過渡。
篇四:JAVA開發(fā)工程師面試題
一、 概念題
1、 解釋什么是隊列(queue),什么棧(stack),有何區(qū)別?
隊列是一種特殊的線性表,他按照先進(jìn)先出的原則存儲數(shù)據(jù)。
棧是一種數(shù)據(jù)結(jié)構(gòu),它按照后進(jìn)先出的原則存儲數(shù)據(jù),先進(jìn)入的數(shù)據(jù)被壓入棧底,最后的數(shù)據(jù)在棧頂,需要讀數(shù)據(jù)的時候從棧頂開始彈出數(shù)據(jù)。 2、 用C/C++或者Php,或Java,給出例子,解釋什么是異常(exception)?
3、 簡述HashMap、HashSet、HashTable的區(qū)別。 Hashtable類
Hashtable繼承Map接口,實現(xiàn)一個key-value映射的哈希表。任何非空(non-null)的對象都可作為key或者value。 HashMap類
HashMap和Hashtable類似,不同之處在于HashMap是非同步的,并且允許null,即null value和null key,null key只能有一個。 HashSet類
HashSet繼承Set接口。
Set是一種不包含重復(fù)的元素的Collection。 4、public、protect和private的區(qū)別是什么?
二、 數(shù)據(jù)庫相關(guān)題
試設(shè)計一個商品相關(guān)數(shù)據(jù)庫,要求包括商品類別、商品的基本信息,并完成下面的三個查詢。
1、請寫出創(chuàng)建相關(guān)表的SQL語句。
2. 使用標(biāo)準(zhǔn)SQL,得到2008年1月份入庫的所有商品信息。 3. 使用標(biāo)準(zhǔn)SQL,得到“Toy”分類下的所有商品信息。
4. 使用標(biāo)準(zhǔn)SQL,統(tǒng)計出所有包含商品價格低于100.00的分類。
三、 程序填空題。
閱讀下列說明、圖以及Java程序,將應(yīng)填入__(n)__處的字句寫在答題紙的對應(yīng)欄內(nèi)。 1、[說明]
某訂單管理系統(tǒng)的部分UML類圖如圖1-1所示
圖4-1 訂單管理系統(tǒng)的部分類圖
圖1-1中,Product表示產(chǎn) 品,ProductList表示所銷售產(chǎn)品的列表,Order表示產(chǎn)品訂單,0rderltem表示產(chǎn)品訂單中的一個條目,OrderList表示訂單列 表,SalesSystem提供訂單管理系統(tǒng)的操作接口。各個類的部分屬性和方法說明如表1-1所示。 表1-1
可以使用類java.util。ArrayList來實現(xiàn)對象的聚集關(guān)系,如圖4-1中OrderList與Order之間的聚集關(guān)系。for-each循環(huán)提供了一種遍歷對象集合的簡單方法。在for-each循環(huán)中,可以指定需要遍歷的對象集合以及用來接收集合中每個元素的變量,其語法如下: for(用來接收集合中元素的變量:需要遍歷的對象集合),如果要使用for-each循環(huán)來遍歷對象集合,那么包含該對象集合的類必須實現(xiàn)接口java.util.Iterable。Java程序1-1和Java程序1-2分別給出了類OrderList和方法statistic的Java代碼。 [Java程序1-1] import java.util.*;
public class OrderList __(1)__ {
private ArrayListorders; public OrderListO {
this.orders = new ArrayList(Order) 0; }
public void addOrder(Order order) { this.orders, add (order); }
public IteratoriteratorO {
return __(2)__;
}
public int getNunberOfOrders() { return this.orders. size(); }
}
[Java程序1-2]
import java.util.*;
public class SalesSystem { private ProductList catalog; private OrderList sales;
private static PrintWriter stdOut = new PrintWriter(System.out,true); public void statistic(){
for(Product product : __(3)__{ int number = 0;
for(Order order : __(4)__ {
for(__(5)__ : order){
if<product.equals(item.getProduct())) numbe r += item.getQuantity(); } }
stdOut.println(product.getCode() + " " + product.getDescription() + " "
+ number + " " + number *product.getPrice()); }
}
//其余的方法未列出 }
2、[說明]
傳輸門是傳輸系統(tǒng)中的重要裝置。傳輸門具有 Open(打開)、Closed(關(guān)閉)、Opening(正在打開)、StayOpen(保持打開)、Closing(正在關(guān)閉)五種狀態(tài)。觸發(fā)狀態(tài)的轉(zhuǎn)換事件有 click、complete 和 timeout 三種。事件與其相應(yīng)的狀態(tài)轉(zhuǎn)換如圖 2-1 所示。
圖 2-1 傳輸門響應(yīng)事件與其狀態(tài)轉(zhuǎn)換圖
下面的[Java 代碼 1]與[Java 代碼 2]分別用兩種不同的設(shè)計思路對傳輸門進(jìn)行狀態(tài)模擬,請?zhí)钛a(bǔ)代碼中的空缺。 [Java 代碼 1]
public class Door {
public static final int CLOSED = 1; public static final int OPENING = 2; public static final int OPEN = 3; public static final int CLOSING = 4; public static final int STAYOPEN = 5;
private int state = CLOSED;//定義狀態(tài)變量,用不同的整數(shù)表示不同狀態(tài) private void setState(int state){this.state = state;} //設(shè)置傳輸門當(dāng)前狀態(tài)
public void getState(){
// 此處代碼省略,本方法輸出狀態(tài)字符串,
// 例如,當(dāng)前狀態(tài)為 CLOSED 時,輸出字符串為”CLOSED” }
public void click() { //發(fā)生 click 事件時進(jìn)行狀態(tài)轉(zhuǎn)換 if ( (1) ) setState(OPENING);
else if ( (2) ) setState(CLOSING); else if ( (3) ) setState(STAYOPEN); //發(fā)生 timeout 事件時進(jìn)行狀態(tài)轉(zhuǎn)換
public void timeout(){ if (state == OPEN) setState(CLOSING); } public void complete(){ //發(fā)生 complete 事件時進(jìn)行狀態(tài)轉(zhuǎn)換 if (state == OPENING) setState(OPEN);
else if (state == CLOSING) setState(CLOSED); }
public static void main(String [] args){ Door aDoor = new Door(); aDoor.getState(); aDoor.click(); aDoor.getState(); aDoor.complete(); aDoor.getState(); aDoor.click(); aDoor.getState(); aDoor.click(); aDoor.getState(); return; } }
[Java 代碼 2]
public class Door {
public final DoorState CLOSED = new DoorClosed(this); public final DoorState OPENING = new DoorOpening(this); public final DoorState OPEN = new DoorOpen(this);
public final DoorState CLOSING = new DoorClosing(this); public final DoorState STAYOPEN = new DoorStayOpen(this); private DoorState state = CLOSED; //設(shè)置傳輸門當(dāng)前狀態(tài)
public void setState(DoorState state){ this.state = state;} public void getState(){ //根據(jù)當(dāng)前狀態(tài)輸出對應(yīng)的狀態(tài)字符串 System.out.println(state.getClass().getName()); }
public void click(){ (4) ;} //發(fā)生 click 事件時進(jìn)行狀態(tài)轉(zhuǎn)換 public void timeout(){ (5) ;}//發(fā)生 timeout 事件時進(jìn)行狀態(tài)轉(zhuǎn)換 public void complete(){ (6) ;}//發(fā)生 complete 事件時進(jìn)行狀態(tài)轉(zhuǎn)換 public static void main(String[] args){ Door aDoor = new Door(); aDoor.getState(); aDoor.click(); aDoor.getState(); aDoor.complete(); aDoor.getState(); aDoor.timeout(); aDoor.getState(); return; } }
篇五:java_web開發(fā)人員面試題及答案
java 面試題
一.選擇題(每題1分)
1. jsp 有幾個內(nèi)置對象?()(單選)
A 5個 B 6個C9個 D 8個 2.在JAVA中,如何跳出當(dāng)前的多重嵌套循環(huán)?()(多選)
A break Breturn C forward D finally
3. 四種會話跟蹤技術(shù),哪個范圍最大?()(單選)
A page B request C session Dapplication
4. java中有幾種方法可以實現(xiàn)一個線程?()(單選)
A 1種B 2種 C 3種 D 4種
5. 同步有幾種實現(xiàn)方法()(單選)
A 4種B 2種 C 3種 D 1種 6. xml有哪些解析技術(shù)?()(多選)
ADOMBSAXCSTAXD JDOM
7. 下列說法正確的是()(多選) A 構(gòu)造器Constructor可被繼承
BString類不可以繼承 C 判斷兩個對象值相同用“==”
Dchar型變量中能存貯一個中文漢字
8.下面說法錯誤的是()(單選)
A Vector是線程安全的
Bfloat f=3.4是正確的
C StringBuffer的長度是可變的
D StringBuffer的長度是不可變的 9. 下列關(guān)于集合的說法正確的是()(多選)
AList 的具體實現(xiàn)包括 ArrayList 和 Vector
BMap 集合類用于存儲元素對(稱作"鍵"和"值"),其中每個鍵映射到一個值
C Set的元素是有序的
DHashtable是線程安全的。 10. 下列關(guān)于線程說法正確的是()(多選)
A調(diào)用sleep不會釋放對象鎖。
B調(diào)用wait方法導(dǎo)致本線程放棄對象鎖
C當(dāng)一個線程進(jìn)入一個對象的一個synchronized方法后,其它線程不可進(jìn)入此對象的其它方法
D notify():喚醒全部處于等待狀態(tài)的線程。
11. 給定JSP程序源碼如下,該JSP運(yùn)行后輸出的結(jié)果是()。(單選)
<%int count="1;%">
Count:<%=++count%>
A Count:1BCount:2 C1:2 D Count:
12在J2EE中的一個JSP文件中,有表達(dá)式<%=2+3%>,它將輸出()(單選)
a)2+3b)5c)23d)不會輸出,因為表達(dá)式是錯誤的
13 在J2EE中,JSTL提供條件標(biāo)簽以支持JSP頁面的各種條件,其中()類似于Java語言的switch語句。(單選)
a)b)c)d)
14. 在進(jìn)行Java Web開發(fā)時,假定一個變量保存在session中,要獲得這個變量的值,可以使用以下()語句。(單選)
a)application.getAttribute(“name”) b)pageContext.getAttribute(“name”)
c)session.getAttribute(“name”)
d)config.getInitParameter(“name”)
15)在J2EE中,編寫Servlet過濾器時,()接口用于調(diào)用過濾器鏈中的下一個過濾器。()(單選)
a)Filterb)FilterConfigc)FilterChaind)Servlet
16) 關(guān)于視圖的描述正確的是() (單選)
a) 視圖是一種特殊的表,它存儲了用戶定制的數(shù)據(jù)。
b) 視圖僅用于用戶進(jìn)行查詢,不可以通過視圖對數(shù)據(jù)進(jìn)行修改。
c) 在sql server中可以通過用T-sql語句來創(chuàng)建,也可以通過企業(yè)管理器。
d) 創(chuàng)建視圖只能操作本機(jī)器上的數(shù)據(jù)庫表。
17)STRUTS框架中,()類在視圖層和控制層之間傳遞HTML表單數(shù)據(jù)。(單選) a) Action b) ActionForwardc) ActionFormd) ActionServlet
18)Struts控制器的主要任務(wù)是接受用戶請求、根據(jù)用戶請求調(diào)用對應(yīng)的模型組件、獲取業(yè)務(wù)邏輯執(zhí)行結(jié)果的根據(jù)處理結(jié)果選擇適合的視圖組件返回給用戶,實現(xiàn)Struts控制器的類中不包括()。(單選) a)ActionServletb)Actionc) ActionFormd)ActionForward
19)在OOD中,類和接口之間的關(guān)系稱之為()。(單選)
a) 泛化b)實現(xiàn)c) 關(guān)聯(lián)d) 繼承
20) 以下關(guān)于SessionFactory的說法哪些正確?()(多選)
A) 對于每個數(shù)據(jù)庫事務(wù),應(yīng)該創(chuàng)建一個SessionFactory對象
B) 一個SessionFactory對象對應(yīng)一個數(shù)據(jù)庫存儲源。
C) SessionFactory是重量級的對象,不應(yīng)該隨意創(chuàng)建。如果系統(tǒng)中只有一個數(shù)據(jù)庫存儲源只需要創(chuàng)建一個。
D) SessionFactory的load()方法用于加載持久化對象
21) 關(guān)于AOP錯誤的()(單選)
A)AOP將散落在系統(tǒng)中的“方面”代碼集中實現(xiàn)
B)AOP有助于提高系統(tǒng)可維護(hù)性
C)AOP已經(jīng)表現(xiàn)出將要替代面向?qū)ο蟮内厔?D)AOP是一種設(shè)計模式,Spring提供了一種實現(xiàn)
22) 依賴注入說法正確的(單選)
A)依賴注入的目標(biāo)是在代碼之外管理程序組建間的依賴關(guān)系
B)依賴注入即是“面向接口”的編程
C)依賴注入是面向?qū)ο蠹夹g(shù)的替代品
D)依賴注入的使用會增大程序的規(guī)模
23)以下哪些屬于Session的方法?()(多選)
A)load()
B)save()
C)()
D)update()
E)open()
F)close() 24) 下面那些是Hibernate的查詢方式()(多選)
A) sql B) hql C)Criteria
25) 以下數(shù)據(jù)結(jié)構(gòu)不屬于線性結(jié)構(gòu)的是()(單選)
A) 隊列 B) 線性表C)二叉樹 D) 棧
26)下列是文件讀寫的類是()(多選)
A)File Reader B) File C)FileWriter D) InputStream
27)數(shù)據(jù)庫技術(shù)中的“臟數(shù)據(jù)',是指()的數(shù)據(jù)。(單選)
A) 錯誤B回返C未提交D未提交的隨后又被撤消
28)在計算機(jī)中,—個字節(jié)是由多少個二進(jìn)制位組成的() (單選)
A). 4 B). 8 C).16 D). 24
29)設(shè)正x、y均為整型變量,且x=10 y=3,則以下語句printf("%d,%d ",x--,--y); 的輸出結(jié)果是()(單選) A).10,3 B). 9,3 C). 9,2 D).10,2
30) 下列不屬于面向?qū)ο蟮姆椒ㄊ牵ǎ▎芜x)
A).對象 B). 類 C). 繼承 D).過程調(diào)用
二. 填空(每空1分) 1. String s = new String("xyz");創(chuàng)建了____2_個String 對象?
2. Math.round(9.5)等於____10_ Math.round(-9.5)等於______ -9
3. try {}里有一個return語句,那么緊跟在這個try后的finally {}里的code會被執(zhí)行,什么時候被執(zhí)行,在return_________ ( 前還是后?)
4. 如何現(xiàn)實servlet的單線程模式<%@ page="" isthreadsafe="false">
5. 類變量必須帶的修飾符是 _________static____
6. final類可以修飾在屬性 , 方法 和 ______類_ 前面
7. Java默認(rèn)的包是________________java.lang.* ___
8.Hibernate里面怎樣實現(xiàn)類與類之間的關(guān)系___________________________表映射_______
9. Socket 編程服務(wù)器端用___________serverSocket_類來創(chuàng)建socket對象
三. 判斷題(每題2分)
1. 依賴注入即是“面向接口”的編程。錯
2. Overload和Override都是java多態(tài)的不同體現(xiàn)形式。對
3. String是最基本的數(shù)據(jù)類型錯
4. 啟動一個線程是用start()對
5. 接口可以繼承接口對
四.簡答題(每題4分)
1.下列程序打印結(jié)果是
int[] arr = {1,3,3,2,8};
String str = “”;
int i=0;
publicvoid doIt(){
for(;i<arr.length;){
if(arr[i]>arr[i+1]){
str=arr[i]+arr[i+1]+str;
break;
} elseif(arr[i]<arr[i+1]){
str=arr[i]+str+arr[i+1];
i++;
continue;
} else{
str+=arr[i];
i++;
}
}
System.out.println(i);
System.out.println(str);
}
i=2;str=5133
2. 將會打印出什么? package test; public class FatherClass
public FatherClass()
{ System.out.println("FatherClass Create"); }
類:package test;import test.FatherClass;
public class ChildClass extends FatherClass public ChildClass() { System.out.println("ChildClass Create"); }
public static void main(String[] args) { FatherClass fc = new FatherClass();
ChildClass cc = new ChildClass(); }}
輸出結(jié)果:
fatherClass Create
fatherClass Create
hildClass Create
3.下列程序?qū)是錯,如果錯請說明原因!
abstract class Name {
private String name;
public abstract boolean isStupidName(String name) {}
abstract method必須以分號結(jié)尾,且不帶花括號
4. 表:table1(FId,Fclass,Fscore),用最高效最簡單的SQL列出各班成績最高的列表,顯示班級,成績兩個字段。
select fclass,max(fscore) from table1 group by fclass,fid
5. 下面程序運(yùn)行結(jié)果是
String[] arr1 ={”a”,”b”,”1″,”c”,”b”};
List lst1 = new ArrayList();
lst1.add(”d”);
Collections.addAll(lst1,arr1);
System.out.println(lst1);
Setset1 = new HashSet();
set1.add(”d”);
Collections.addAll(set1, arr1);
System.out.println(set1);
運(yùn)行結(jié)果:
d, a, b, 1, c, b
【java開發(fā)面試題型與技巧】相關(guān)文章:
Java面試技巧08-04
Java面試技巧攻略08-04
Java面試通用技巧08-04
Java面試小技巧08-09
2016年Java開發(fā)崗位面試題08-05
java實習(xí)生面試技巧三篇08-06
面試開發(fā)人員的方法技巧08-21
java面試簡答試題09-25