JAVA高級(jí)工程師筆試題及答案
Java可以編寫桌面應(yīng)用程序、Web應(yīng)用程序、分布式系統(tǒng)和嵌入式系統(tǒng)應(yīng)用程序等。下面是小編收集的JAVA高級(jí)工程師筆試題及答案,歡迎大家參考!
1.abstractclass和interface的區(qū)別?
抽象類可以有私有方法和變量,接口中不能有私有方法和變量。
抽象類可以有方法的實(shí)現(xiàn),接口中不能有方法的實(shí)現(xiàn)并且所以的方法都需要實(shí)現(xiàn)。
2.try{}里有一個(gè)return語(yǔ)句,那么緊跟在這個(gè)try后的finally{}里的code會(huì)不會(huì)被執(zhí)行,什么時(shí)候被執(zhí)行,在return前還是后?
Finally代碼塊中的語(yǔ)句是必須執(zhí)行的,必須在try代碼塊執(zhí)行完之后執(zhí)行,在return語(yǔ)句后執(zhí)行。除非代碼塊中有System.exit();方法,因?yàn)榻K止了虛擬機(jī)進(jìn)程,會(huì)不執(zhí)行。
3.int和Integer有什么區(qū)別?
Java中提供了兩種不同類型:引用類型和原始類型。Int是原始類型,Integer是int的封裝類型。
4.說(shuō)出ArrayList,Vector,LinkedList的存儲(chǔ)性能和特性?
ArrayList和Vector是按數(shù)組的方式存儲(chǔ)數(shù)據(jù)的,此數(shù)組的元素大于實(shí)際存儲(chǔ)的數(shù)據(jù),以便于增加和插入元素,它們?cè)试S數(shù)組按序號(hào)索引元素,由于插入數(shù)據(jù)時(shí)涉及到移動(dòng)等內(nèi)存操作,所以索引數(shù)據(jù)快而插入數(shù)據(jù)慢。Vector由于使用了synchroinzed(安全性),通常性能上較ArrayList差。LinkedList使用雙向鏈表實(shí)現(xiàn)存儲(chǔ),按索引序號(hào)前向或后向遍歷,插入數(shù)據(jù)時(shí)只需要記錄本項(xiàng)的前后項(xiàng)即可,所以插入數(shù)據(jù)速度較快。
5.描述一下JVM加載class文件的原理機(jī)制?
Java中所有的類必須加裝到j(luò)vm中才能運(yùn)行,這個(gè)工作是由jvm中的類裝載器完成的,類裝載器所作工作實(shí)質(zhì)是把類文件讀取到內(nèi)存當(dāng)中。
6.STRING與STRINGBUFFER的區(qū)別?
String在追加內(nèi)容的時(shí)候不會(huì)在原有的內(nèi)存區(qū)域中追加內(nèi)容,而是在內(nèi)存中分配一塊內(nèi)存區(qū)域存放追加內(nèi)容,StringBuffer不會(huì)。
7.List、Map、Set三個(gè)接口,存取元素時(shí),各有什么特點(diǎn)?
List以特定順序來(lái)持有元素,元素可重復(fù)。
Set在內(nèi)部排序,不允許有重復(fù)元素。
Map保存key-value值,value可有多個(gè)值。
8.談?wù)刦inal,finally,finalize的區(qū)別
Final可以修飾變量、方法、類。被final修飾的變量必須初始化并且不能被修改。被final修飾的方法不能被重載。被final修飾的類不能被繼承,final不能和abstract同時(shí)修飾。Finally是在異常處理是提供的,如果拋出異常,那么相匹配的catch子句就會(huì)執(zhí)行,然后控制就會(huì)進(jìn)入finally中。
Java允許finalize()方法在垃圾收集器將對(duì)象從內(nèi)存中清除出去之前做垃圾清理工作。這個(gè)方法是垃圾收集器在確定對(duì)象沒(méi)有被引用時(shí)調(diào)用的。Finalize()方法是在刪除這個(gè)對(duì)象之前對(duì)這個(gè)對(duì)象調(diào)用的。
9.sleep()和wait()有什么區(qū)別?
Sleep()是線程類Thread方法,導(dǎo)致該線程在指定的時(shí)間內(nèi)暫停,指定時(shí)間之后會(huì)自動(dòng)恢復(fù),該方法不會(huì)釋放對(duì)象鎖。
Wait()是Object類的方法,調(diào)用該方法是線程會(huì)進(jìn)入等待狀態(tài),直到調(diào)用notify或notfyall方法通知恢復(fù)狀態(tài),該方法會(huì)釋放對(duì)象鎖。
10.GC是什么?為什么要有GC?
GC是java提供的垃圾回收器。
有了GC就不需要程序員人工去釋放內(nèi)存空間,當(dāng)虛擬機(jī)發(fā)現(xiàn)內(nèi)存空間緊張時(shí)會(huì)自動(dòng)的去清理一些無(wú)用變量所占用的內(nèi)存空間。程序員也可以調(diào)用System.gc();強(qiáng)制執(zhí)行一次清理。
11.jsp:include,jsp:forward兩種跳轉(zhuǎn)方式分別是什么?有什么區(qū)別?
12.簡(jiǎn)述JSP的內(nèi)置對(duì)象及方法。
Request,respone,session,application,out,exception,page,pageContext,config
13.Servlet的基本架構(gòu)?
PublicclassservletNameextendsHttpServlet{
PublicvoiddoPost(HttpServletRequest,HttpServletRespone)
ServletException,IOException{}
PublicvoiddoGet(HttpServletRequest,HttpServletRespone)
ServletException,IOException{}
}
14.getServletContext()和getServletConfig()的意思
getServletContext()是獲取web中的servletContex對(duì)象
getServletConfig()是獲取初始化參數(shù)和servletContext對(duì)象
15.filter的作用是什么?主要實(shí)現(xiàn)什么方法?request和response全稱是什么?
Request全稱是HttpServletRequest
Response全稱是HttpServletResponse
16.JS中的三種彈出式消息提醒(警告窗口、確認(rèn)窗口、信息輸入窗口)的命令是什么?throwsthrows
17.談?wù)凧avaScript數(shù)組排序方法sort()的使用,重點(diǎn)介紹sort()參數(shù)的`使用及其內(nèi)部機(jī)制
18.結(jié)合text這段結(jié)構(gòu),談?wù)刬nnerHTMLouterHTMLinnerText之間的區(qū)別。
19.如何獲取表單select域的選擇部分的文本?
20.在JavaScript中定時(shí)調(diào)用函數(shù)foo()如何寫?
21.hibernate和jdbc有什么區(qū)別
22.描述使用JDBC連接數(shù)據(jù)庫(kù)的過(guò)程
(1)加載驅(qū)動(dòng)程序。
(2)建立連接。
(3)建立statement。
(4)關(guān)閉連接。
23.簡(jiǎn)述JDBC連接池的實(shí)現(xiàn)方法
24.Jdo是什么?
25.Class.forName的作用?為什么要用?
作用是返回一個(gè)類對(duì)象。
要求JVM查找并加載指定的類。
26.請(qǐng)教一個(gè)面試中遇到的SQL語(yǔ)句的查詢問(wèn)題
表中有ABC三列,用SQL語(yǔ)句實(shí)現(xiàn):當(dāng)A列大于B列時(shí)選擇A列否則選擇B列,當(dāng)B列大于C列時(shí)選擇B列否則選擇C列。
27.一個(gè)日期判斷的sql語(yǔ)句?
請(qǐng)取出tb_send表中日期(SendTime字段)為當(dāng)天的所有記錄?(SendTime字段為datetime型,包含日期與時(shí)間)
28.用一條SQL語(yǔ)句查詢出每門課都大于80分的學(xué)生姓名
namekechengfenshu
張三語(yǔ)文81
張三數(shù)學(xué)75
李四語(yǔ)文76
李四數(shù)學(xué)90
王五語(yǔ)文81
王五數(shù)學(xué)100
王五英語(yǔ)90
【JAVA高級(jí)工程師筆試題及答案】相關(guān)文章:
Java高級(jí)工程師面試題及答案10-24
java試題及答案05-23
JAVA模擬試題及答案11-14
2017年Java試題及答案08-27
java基礎(chǔ)筆試題及答案05-06
Java高級(jí)工程師試題05-06
最新java面試題及答案08-20
java面試題2017及答案08-16
Java面試題大全及答案08-16