當前位置:學識都>好好學習>考研>

開發人員筆試題

學識都 人氣:2.9W

開發人員筆試題大家去面試的時候相信都會做過一些。下面是小編整理的開發人員筆試題,歡迎大家閱讀。

開發人員筆試題

開發人員筆試題一

一、填空題(本大題10小題,每空1分,共20分)

語言的三大特性即是、、

2.在Java中,char 型採用____unicode_______編碼方案,這樣,無論是中文字符還是英文字符,都是佔用__2___個字節的內存空間。

3. 形式參數指的是方法被__定義____ 時的參數行,實際參數是方法被__調用___ 時所傳遞進去的變量或值。

對象則是每個客戶專用的。

接口 。

6.程序中實現多線程的方法有兩種:繼承Thread類和實現

接口。

對優先級。

8.面向對象編程的五大設計原則,分別是、 、、

9.通過Ajax,客戶端獲取的數據主要有兩種類型:文本型和 10. Socket通常也稱爲套接字 ,用於描述 和

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

1.在JAVA中,如果父類中某些方法不包含任何邏輯,並且需要由子類重寫.應該使用( )關鍵字來聲明父類的這些方法:

A) final B) static C) abstract D) void

2.在JAVA中,已定義兩個接口B和C,要定義一個實現這兩個接口的類,以下語句正確的是( )。

A) interface A extend B,C B) interface A implements B,C

C) class A implements B,C D) class A implements B, implements C

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

A) 靜態方法 B) 常量 C) 構造方法 D) 抽象方法

4.假設A有構造方法A (int a),則在類A的其他構造方法中調用該構造方法和語句格式應爲( )。

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

5.設 x = 1 ,y = 2 , z = 3, 則表達式 y+=z--/++x 的值是( )。

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

6.下列關於繼承的說法哪個正確?( )。

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

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

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

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

7.在java中.在使用JDBC時。對於多次調用同一條SQL語句的情況, 使用( )通常會提高效。

A) Statement B) CallableStatement

C) PreparedStatement D) PrarmeterStatement

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

A) service B) destroy C) doPost D) init

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

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

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

語言中int類型數據佔用多少位?( )。

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

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

A) 由 Servlet容器創建,對於每個HTTP請求let容器都會創建 一個ServletContext對象

B)由JavaWeb 應用本身爲自己創建一個ServletContext對象

C)由Servlet容器創建,對於每個JaveWeb應用,在啓動時,Servlet容器都會創建一個ServletContext對象

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

A) 通過cookie B) 利用文件系統

C) 利用數據庫 D) 通過ServletContext對象

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

A) List B) Set C) Map D) SortedSet

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

A) Socket a = new Soeket(80):

B) Socket b = new Socket("130. 3. 4. 5", 80):

C) ServerSocket c = new Socket(80)

D) ServerSocket d = new Socket ("130. 3. 4, 5", 80)

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

A)帶有頁作用域的對象在一個web應用程序的每個JSP中都存在.

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

C)當JSP容器遇到開始定製標籤和結束定製標籤時,分別調用 doInitBody方法和doAfterBody方法。

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

16.爲了區分重載多態中同名的不同方法,要求:( )。

A)參數名不同 B) 採用不同的形式參數列表

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

17.下面是有關子類調用父類構造函數的描述正確的是:( )。

A)子類定義了自己的構造函數.就不會調用父類的構造函數

B)子類必須通過Super關鍵字調用父類有參數的構造函數

C)如果子類的構造沒有通過super調用父類構造函數,那麼子類會 先調用子類自己的構造函數,再調用父類不含參數的構造函數。

D)創建子類的對象時,先調用子類自己的構造函數,然後調用父 類的構造函數

18.在Java中,負責對字節代碼解釋執行的是( )。

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

19.一個java程序運行從上到下的環境次序是( )。

A) 操作系統、Java程序、jre/jvm、硬件

B) jre/jvm、Java程序、硬件、操作系統

C) java程序、jre/jvm、操作系統、硬件

D) java程序、操作系統、jre/jvm、硬件

20.對於從Employee表中選擇記錄的以下代碼片段,識別其遺漏的代碼行。( ) Connection con = null:

Class. forName("OdbcDriver"):

con=onnection("jdbc:odbc:ss" , "sa" , "");

ResultSet rs=uteQuery("select * from Employee");

A) Statement stat=createStatement();

B) Statement stat=teStatement ();

C) PreparedStatement stat=teStatement():

D) PreparedStatement stat=createPreparedStatement();

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

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

2.什麼是單例模式(Singleton) ? 請在下面寫出一個單例模式類,並支持多線程調用。(6分)

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

4.請談談對SQL注入的理解,請給出你知道的防止SQL注入的方法。(6分)

5.請談談對hibernate的理解,並簡要敘述Hibernate的一級緩存和二級緩存(8分)。

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

三、簡答題(參考答案)

1. ArrayList和Vector都是使用數組方式存儲數據,此數組元素數大於實際存儲的數據以便增加和插入元素,它們都允許直接按序號索引元素,但是插入元素要涉及數組元素移動等內存操作,所以索引數據快而插入數據慢,Vector由於使用了synchronized方法(線程安全),通常性能上較ArrayList差,而LinkedList使用雙向鏈表實現存儲,按序號索引數據需要進行前向或後向遍歷,但是插入數據時只需要記錄本項的前後項即可,所以插入速度較快。

2. 創建某類對象時,無論創建多少次該類對象只有一份在內存中,這就是單例模式。支持多線程調用,考慮線程安全,只需要加鎖即可。

public class Singleton{

private static Singleton instance = null;

private Singleton(){}

private static synchronized void syncInit(){

if(instance == null){

instance = new Singleton();

}

}

public static Singleton getInstance(){

if(instance == null){

syncInit();

}

return instance;

}

}

3. JVM中類的裝載是由ClassLoader和它的子類來實現的,Java ClassLoader是一個重要的Java運行時系統組件。它負責在運行時查找和裝入類文件的類。

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

b.程序判斷 c.使用PreparedStatement連接數據庫。(參數化) d.利用框架技術

5. Hibernate是一個開放源代碼的對象關係映射框架,它對JDBC進行了非常輕量級的.對象封裝,使得Java程序員可以隨心所欲的使用對象編程思維來操縱數據庫。 Hibernate可以應用在任何使用JDBC的場合,既可以在Java的客戶端程序使用,也可以在Servlet/JSP的Web應用中使用。

一級緩存就是Session級別的緩存,一個Session做了一個查詢操作,它會把這個操作的結果放在一級緩存中,如果短時間內這個

session(一定要同一個session)又做了同一個操作,那麼hibernate直接從一級緩存中拿,而不會再去連數據庫,取數據;

二級緩存就是SessionFactory級別的緩存,顧名思義,就是查詢的時候會把查詢結果緩存到二級緩存中,如果同一個sessionFactory

創建的某個session執行了相同的操作,hibernate就會從二級緩存中拿結果,而不會再去連接數據庫;

6.插入排序、希爾排序、冒泡排序、快速排序、直接排序、歸併排序 下面以快速排序爲例:

public class quickSort {

inta[]={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};

public quickSort(){

quick(a);

for(int i=0;i

tln(a[i]);

}

}

public int getMiddle(int[] list, int low, int high) {

int tmp =list[low]; //數組的第一個作爲中軸

while (low < high){

while (low < high&& list[high] >= tmp) {

high--;

}

list[low] =list[high]; //比中軸小的記錄移到低端

while (low < high&& list[low] <= tmp) {

low++;

. }

list[high] =list[low]; //比中軸大的記錄移到高端

}

list[low] = tmp; //中軸記錄到尾

return low; //返回中軸的位置

}

public void _quickSort(int[] list, int low, int high) {

if (low < high){

int middle =getMiddle(list, low, high); //將list 數組進行一分爲二

_quickSort(list, low, middle - 1); //對低字表進行遞歸排序

_quickSort(list,middle + 1, high); //對高字表進行遞歸排序

}

}

public void quick(int[] a2) {

if (th > 0) { //查看數組是否爲空

_quickSort(a2,0, th - 1);

}

}

}

開發人員筆試題二

1、簡述 private、 protected、 public、 internal 修飾符的訪問權限。

2、列舉 頁面之間傳遞值的幾種方式。

5、如果在一個B/S結構的系統中需要傳遞變量值,但是又不能使用Session、

Cookie、Application,您有幾種方法進行處理?

6、什麼是裝箱和拆箱?

8、的身份驗證方式有哪些?分別是什麼原理?

9、在C#中,string str = null 與 string str = “” 請儘量使用文字或圖

象說明其中的區別。

10、SQLSERVER服務器中,給定表 table1 中有兩個字段 ID、LastUpdateDate,

ID表示更新的事務號, LastUpdateDate表示更新時的服務器時間,請使用一句 SQL語句獲得最後更新的事務號

11、寫出一條Sql語句:取出表A中第31到第40記錄(SQLServer,以自動增長的ID作爲主鍵,注意:ID可能不是連續的。

12、能用foreach遍歷訪問的對象需要實現 ________________接口或聲明

________________方法的類型。

14、接口是否可繼承接口? 抽象類是否可實現(implements)接口? 抽象類是否可

繼承實體類(concrete class)?

15、try {}裏有一個return語句,那麼緊跟在這個try後的finally {}裏的code會不會被執行,什麼時候被執行,在return前還是後?

16、如何處理幾十萬條併發數據?

17、Session有什麼重大BUG,微軟提出了什麼方法加以解決?

18、向服務器發送請求有幾種方式?

19、DataReader與Dataset有什麼區別?

20、需要實現對一個字符串的處理,首先將該字符串首尾的空格去掉,如果字符串中

間還有連續空格的話,僅保留一個空格,即允許字符串中間有多個空格,但連續的空 格數不可超過一個.

21、什麼叫做SQL注入,如何防止?請舉例說明。

22、中常用的對象有哪些?分別描述一下。

23、什麼是SOAP,有哪些應用?

25、float f=-123.567F; int i=(int)f;i的值現在是_____?

26、使用過那幾種框架?數據持久層框架,業務層框架。