Java軟件開發(fā)工程師筆試題_第1頁
Java軟件開發(fā)工程師筆試題_第2頁
Java軟件開發(fā)工程師筆試題_第3頁
Java軟件開發(fā)工程師筆試題_第4頁
Java軟件開發(fā)工程師筆試題_第5頁
已閱讀5頁,還剩8頁未讀, 繼續(xù)免費(fèi)閱讀

下載本文檔

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

文檔簡介

Java軟件開發(fā)工程師筆試題

下面CN人才網(wǎng)小編為大家?guī)淼氖荍ava軟件開發(fā)工程師筆試

題,希望對大家有所幫助~

一、選擇題(本大題20小題,每小題2分.共40分)。

1.在JAVA中,如果父類中某些方法不包含任何邏輯,并且需

要由子類重寫.應(yīng)該使用()關(guān)鍵字來聲明父類的這些方法:

A)finalB)staticC)abstractD)void

2.在JAVA中:已定義兩個接口B和C,要定義一個實現(xiàn)這兩個

接口的類,以下語句正確的是()o

A)interfaceAextendB,CB)interfaceAimplementsB,C

C)classAimplementsB,CD)classAimplementsB,

implementsC

3.在JAVA接口中可以定義()。

A)靜態(tài)方法B)常量C)構(gòu)造方法D)抽象方法

4.假設(shè)A有構(gòu)造方法A(inta),則在類A的其他構(gòu)造方法中調(diào)用

該構(gòu)造方法和語句格式應(yīng)為()o

A)A(X)B)this.A(x)C)this(x)D)super(x)

5.設(shè)x=1,y=2,z=3,則表達(dá)式y(tǒng)+=z-/++x的值是()。

A)3B)3.5C)4D)5

6.下列關(guān)于繼承的說法哪個正確?()。

A)子類只繼承父類public方法和屬性:

B)子類繼承父類的非私有屬性和方法:

C)子類繼承父類的方法,而不繼承父類的屬性:

D)子類將繼承的所有的屬性和方法.

7.在java中.在使用JDBC時。對于多次調(diào)用同一條SQL語句

的情況,使用()通常會提高效。

A)StatementB)CallableStatement

C)PreparedStatementD)PrarmeterStatement

8.下列不能控制一個Servlet的生命周期方的法是:

A)serviceB)destroyC)doPostD)init

9.能夠給一個byte型變量賦值的范圍是()。

A)0-65535B)(-128)?127

C)(-32,768)?32,767D)(-256)~255

lO.java語言中int類型數(shù)據(jù)占用多少位?()。

A)32B)64C)16D)20

11.ServletContext對象是如何創(chuàng)建的?()。

A)由Servlet容器創(chuàng)建,對于每個HTTP請求.Servlet容器都

會創(chuàng)建一個ServletContext對象

B)由JavaWeb應(yīng)用本身為自己創(chuàng)建一個ServletContext對象

C)由Servlet容器創(chuàng)建,對于每個JaveWeb應(yīng)用,在啟動時,

Servlet容器都會創(chuàng)建一個ServletContext對象

12.在JSP中不能在不同用戶之間共享數(shù)據(jù)的方法是()。

A)通過cookieB)利用文件系統(tǒng)

C)利用數(shù)據(jù)庫D)通過ServletContext對象

13.以下哪個不是Collection的子接口?()。

A)ListB)SetC)MapD)SortedSet

14.下面正確的創(chuàng)建Socket的語句是()。

A)Socketa=newSoeket(80):

B)Socketb=newSocket(H130.3.4.5",80):

C)ServerSocketc=newSocket(80)

D)ServerSocketd=newSocket("130.3.4,5",80)

15.下面的說法正確的是()。

A)帶有頁作用域的對象在一個web應(yīng)用程序的每個JSP中都

存在.

B)指令指定與一個特定的JSP請求不相關(guān)的全局信息。

C)當(dāng)JSP容器遇到開始定制標(biāo)簽和結(jié)束定制標(biāo)簽時,分別調(diào)用

dolnitBody方法和doAfterBody方法。

D)動作只在翻譯時處理一次。

16.為了區(qū)分重載多態(tài)中同名的不同方法,要求:()。

A)參數(shù)名不同B)采用不同的形式參數(shù)列表

C)返回值類型不同D)選項A,B,C都對

17.下面是有關(guān)子類調(diào)用父類構(gòu)造函數(shù)的描述正確的是:()。

A)子類定義了自己的構(gòu)造函數(shù).就不會調(diào)用父類的構(gòu)造函數(shù)

B)子類必須通過Super關(guān)鍵字調(diào)用父類有參數(shù)的構(gòu)造函數(shù)

C)如果子類的構(gòu)造沒有通過super調(diào)用父類構(gòu)造函數(shù),那么子

類會先調(diào)用子類自己的構(gòu)造函數(shù),再調(diào)用父類不含參數(shù)的構(gòu)造函

數(shù)。

D)創(chuàng)建子類的對象時,先調(diào)用子類自己的構(gòu)造函數(shù),然后調(diào)用

父類的構(gòu)造函數(shù)

18.在Java中,負(fù)責(zé)對字節(jié)代碼解釋執(zhí)行的是()。

A)垃圾回收器B)虛擬機(jī)C)編譯器D)多線程機(jī)制

19.一個java程序運(yùn)行從上到下的環(huán)境次序是()o

A)操作系統(tǒng)、Java程序、jre/jvm、硬件

B)jre/jvm、Java程序、硬件、操作系統(tǒng)

C)java程序、jre/jvm、操作系統(tǒng)、硬件

D)java程序、操作系統(tǒng)、jre/jvm、硬件

20.對于從Employee表中選擇記錄的以下代碼片段,識別其遺

漏的代碼行。()Connectioncon=null:

Class.forName("sun.jdbc.odbc.JdbcOdbcDriver"):

con=DriverManager.getConnection(,,jdbc:odbc:ssM,"sa",

ResultSetrs=stat.executeQuery("select*fromEmployee");

A)Statementstat=createStatement();

B)Statementstat=con.createStatement();

C)PreparedStatementstat=con.createStatement():

D)PreparedStatementstat=createPreparedStatement();

二、問答題(本大題6小題,共40分)。

1.請說出ArrayList,Vector,LinkedList的存儲性能和特性。

(6分)

2.什么是單例模式(Singleton)?請在下面寫出一個單例模式

類,并支持多線程調(diào)用。(6分)

3.請描述一下JVM加載class文件的原理機(jī)制?(6分)

4.請談?wù)剬QL注入的理解,請給出你知道的防止SQL注入

的方法。(6分)

5.請談?wù)剬ibernate的理解,并簡要敘述Hibernate的一級緩存

和二級緩存(8分)。

6.請寫出你知道的排序方法,并使用Java語言寫出其中一種。

(8分)

三、簡答題(參考答案)

I.ArrayList和Vector都是使用數(shù)組方式存儲數(shù)據(jù),此數(shù)組元

素數(shù)大于實際存儲的數(shù)據(jù)以便增加和插入元素,它們都允許直接按

序號索引元素,但是插入元素要涉及數(shù)組元素移動等內(nèi)存操作,所

以索引數(shù)據(jù)快而插入數(shù)據(jù)慢,Vector由于使用了synchronized方法

(線程安全),通常性能上較ArrayList差,而LinkedList使用雙向鏈

表實現(xiàn)存儲,按序號索引數(shù)據(jù)需要進(jìn)行前向或后向遍歷,但是插入

數(shù)據(jù)時只需要記錄本項的前后項即可,所以插入速度較快。

2.創(chuàng)建某類對象時,無論創(chuàng)建多少次該類對象只有一份在內(nèi)存

中,這就是單例模式。支持多線程調(diào)用,考慮線程安全,只需要加

鎖即可。

publicclassSingleton{

privatestaticSingletoninstance=null;

privateSingleton(){}

privatestaticsynchronizedvoidsynclnit(){

if(instance==null){

instance=newSingleton();

}

)

publicstaticSingletongetlnstance(){

if(instance==null){

synclnit();

}

returninstance;

)

)

3.JVM中類的裝載是由ClassLoader和它的子類來實現(xiàn)

的,JavaClassLoader是一個重要的Java運(yùn)行時系統(tǒng)組件。它負(fù)責(zé)

在運(yùn)行時查找和裝入類文件的類。

4.解決辦法:a.利用JavaScript,在客戶端進(jìn)行校驗。

b.程序判斷c.使用PreparedStatement連接數(shù)據(jù)庫。(參數(shù)化)

d.利用框架技術(shù)

5.Hibernate是一個開放源代碼的對象關(guān)系映射框架,它對

JDBC進(jìn)行了非常輕量級的對象封裝,使得Java程序員可以隨心所

欲的使用對象編程思維來操縱數(shù)據(jù)庫。Hibernate可以應(yīng)用在任何

使用JDBC的場合,既可以在Java的客戶端程序使用,也可以在

ServleVJSP的Web應(yīng)用中使用。

一級緩存就是Session級別的緩存,一個Session做了一個查

詢操作,它會把這個操作的結(jié)果放在一級壤存中,如果短時間內(nèi)這

session(一定要同一個session)又做了同一個操作,那么

hibernate直接從一級緩存中拿,而不會再去連數(shù)據(jù)庫,取數(shù)據(jù);

二級緩存就是SessionFactory級別的緩存,顧名思義,就是查

詢的時候會把查詢結(jié)果緩存到二級緩存中,如果同一個

sessionFactory

創(chuàng)建的某個session執(zhí)行了相同的操作,hibernate就會從二級

緩存中拿結(jié)果,而不會再去連接數(shù)據(jù)庫;

6.插入排序、希爾排序、冒泡排序、快速排序、直接排序、歸

并排序下面以快速排序為例:

1.publicclassquicksort{

2.

3.

intaQ={49,38,65,97,76,13,27,49,78,34,12,64,5,4,62,99,98,54,56,17

,18,23,34

,15,35,25,53,51};

4.publicquickSort(){

5.quick(a);

6.for(inti=O;i

7.System.out.println(a[i]);

8.)

9.}

10.publicintgetMiddle(int[]list,intlow,inthigh){

11.inttmp=list[low];〃數(shù)組的第一個作為中軸

12.while(low13.while(low=tmp){

14.high-;

15.}

1

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負(fù)責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

評論

0/150

提交評論