開(kāi)發(fā)人員筆試題
開(kāi)發(fā)人員筆試題大家去面試的時(shí)候相信都會(huì)做過(guò)一些。下面是小編整理的開(kāi)發(fā)人員筆試題,歡迎大家閱讀。
開(kāi)發(fā)人員筆試題一
一、填空題(本大題10小題,每空1分,共20分)。
1.Java語(yǔ)言的三大特性即是、、
2.在Java中,char 型采用____unicode_______編碼方案,這樣,無(wú)論是中文字符還是英文字符,都是占用__2___個(gè)字節(jié)的內(nèi)存空間。
3. 形式參數(shù)指的是方法被__定義____ 時(shí)的參數(shù)行,實(shí)際參數(shù)是方法被__調(diào)用___ 時(shí)所傳遞進(jìn)去的變量或值。
4.JSP
對(duì)象則是每個(gè)客戶(hù)專(zhuān)用的。
接口 。
6.程序中實(shí)現(xiàn)多線(xiàn)程的方法有兩種:繼承Thread類(lèi)和實(shí)現(xiàn)
接口。
對(duì)優(yōu)先級(jí)。
8.面向?qū)ο缶幊痰奈宕笤O(shè)計(jì)原則,分別是、 、、
9.通過(guò)Ajax,客戶(hù)端獲取的數(shù)據(jù)主要有兩種類(lèi)型:文本型和 10. Socket通常也稱(chēng)為套接字 ,用于描述 和
二、選擇題(本大題 20 小題,每小題2分.共40分)。
1.在JAVA中,如果父類(lèi)中某些方法不包含任何邏輯,并且需要由子類(lèi)重寫(xiě).應(yīng)該使用( )關(guān)鍵字來(lái)聲明父類(lèi)的這些方法:
A) final B) static C) abstract D) void
2.在JAVA中,已定義兩個(gè)接口B和C,要定義一個(gè)實(shí)現(xiàn)這兩個(gè)接口的類(lèi),以下語(yǔ)句正確的是( )。
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) 靜態(tài)方法 B) 常量 C) 構(gòu)造方法 D) 抽象方法
4.假設(shè)A有構(gòu)造方法A (int a),則在類(lèi)A的其他構(gòu)造方法中調(diào)用該構(gòu)造方法和語(yǔ)句格式應(yīng)為( )。
A) A(X) B) this.A(x) C) this(x) D) super(x)
5.設(shè) x = 1 ,y = 2 , z = 3, 則表達(dá)式 y+=z--/++x 的值是( )。
A) 3 B) 3.5 C) 4 D) 5
6.下列關(guān)于繼承的說(shuō)法哪個(gè)正確?( )。
A)子類(lèi)只繼承父類(lèi)public方法和屬性:
B)子類(lèi)繼承父類(lèi)的非私有屬性和方法:
C)子類(lèi)繼承父類(lèi)的方法,而不繼承父類(lèi)的屬性:
D) 子類(lèi)將繼承的所有的屬性和方法.
7.在java中.在使用JDBC時(shí)。對(duì)于多次調(diào)用同一條SQL語(yǔ)句的情況, 使用( )通常會(huì)提高效。
A) Statement B) CallableStatement
C) PreparedStatement D) PrarmeterStatement
8.下列不能控制一個(gè)Servlet的生命周期方的法是:
A) service B) destroy C) doPost D) init
9.能夠給一個(gè)byte型變量賦值的范圍是( )。
A) 0~65535 B) (-128)~127
C)(-32, 768)~32, 767 D) (-256)~255
10.java語(yǔ)言中int類(lèi)型數(shù)據(jù)占用多少位?( )。
A) 32 B) 64 C) 16 D) 20
11. ServletContext對(duì)象是如何創(chuàng)建的?( )。
A) 由 Servlet容器創(chuàng)建,對(duì)于每個(gè)HTTP請(qǐng)求.Servlet容器都會(huì)創(chuàng)建 一個(gè)ServletContext對(duì)象
B)由JavaWeb 應(yīng)用本身為自己創(chuàng)建一個(gè)ServletContext對(duì)象
C)由Servlet容器創(chuàng)建,對(duì)于每個(gè)JaveWeb應(yīng)用,在啟動(dòng)時(shí),Servlet容器都會(huì)創(chuàng)建一個(gè)ServletContext對(duì)象
12.在JSP中不能在不同用戶(hù)之間共享數(shù)據(jù)的方法是( )。
A) 通過(guò)cookie B) 利用文件系統(tǒng)
C) 利用數(shù)據(jù)庫(kù) D) 通過(guò)ServletContext對(duì)象
13.以下哪個(gè)不是Collection的子接口?( )。
A) List B) Set C) Map D) SortedSet
14. 下面正確的創(chuàng)建 Socket 的語(yǔ)句是( )。
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.下面的說(shuō)法正確的是( )。
A)帶有頁(yè)作用域的對(duì)象在一個(gè)web應(yīng)用程序的每個(gè)JSP中都存在.
B)指令指定與一個(gè)特定的JSP 請(qǐng)求不相關(guān)的全局信息。
C)當(dāng)JSP容器遇到開(kāi)始定制標(biāo)簽和結(jié)束定制標(biāo)簽時(shí),分別調(diào)用 doInitBody方法和doAfterBody方法。
D) 動(dòng)作只在翻譯時(shí)處理一次。
16.為了區(qū)分重載多態(tài)中同名的不同方法,要求:( )。
A)參數(shù)名不同 B) 采用不同的形式參數(shù)列表
C)返回值類(lèi)型不同 D) 選項(xiàng)A, B, C都對(duì)
17.下面是有關(guān)子類(lèi)調(diào)用父類(lèi)構(gòu)造函數(shù)的描述正確的是:( )。
A)子類(lèi)定義了自己的構(gòu)造函數(shù).就不會(huì)調(diào)用父類(lèi)的構(gòu)造函數(shù)
B)子類(lèi)必須通過(guò)Super關(guān)鍵字調(diào)用父類(lèi)有參數(shù)的構(gòu)造函數(shù)
C)如果子類(lèi)的構(gòu)造沒(méi)有通過(guò)super調(diào)用父類(lèi)構(gòu)造函數(shù),那么子類(lèi)會(huì) 先調(diào)用子類(lèi)自己的構(gòu)造函數(shù),再調(diào)用父類(lèi)不含參數(shù)的構(gòu)造函數(shù)。
D)創(chuàng)建子類(lèi)的對(duì)象時(shí),先調(diào)用子類(lèi)自己的構(gòu)造函數(shù),然后調(diào)用父 類(lèi)的構(gòu)造函數(shù)
18.在Java中,負(fù)責(zé)對(duì)字節(jié)代碼解釋執(zhí)行的是( )。
A) 垃圾回收器 B) 虛擬機(jī) C) 編譯器 D) 多線(xiàn)程機(jī)制
19.一個(gè)java程序運(yùn)行從上到下的環(huán)境次序是( )。
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.對(duì)于從Employee表中選擇記錄的'以下代碼片段,識(shí)別其遺漏的代碼行。( ) Connection con = null:
Class. forName("sun.jdbc.odbc.JdbcOdbcDriver"):
con=DriverManager.getConnection("jdbc:odbc:ss" , "sa" , "");
ResultSet rs=stat.executeQuery("select * from Employee");
A) Statement stat=createStatement();
B) Statement stat=con.createStatement ();
C) PreparedStatement stat=con.createStatement():
D) PreparedStatement stat=createPreparedStatement();
三、問(wèn)答題(本大題6小題,共40分)。
1.請(qǐng)說(shuō)出 ArrayList , Vector , LinkedList 的存儲(chǔ)性能和特性。(6分)
2.什么是單例模式(Singleton) ? 請(qǐng)?jiān)谙旅鎸?xiě)出一個(gè)單例模式類(lèi),并支持多線(xiàn)程調(diào)用。(6分)
3.請(qǐng)描述一下JVM加載class文件的原理機(jī)制?(6分)
4.請(qǐng)談?wù)剬?duì)SQL注入的理解,請(qǐng)給出你知道的防止SQL注入的方法。(6分)
5.請(qǐng)談?wù)剬?duì)hibernate的理解,并簡(jiǎn)要敘述Hibernate的一級(jí)緩存和二級(jí)緩存(8分)。
6.請(qǐng)寫(xiě)出你知道的排序方法,并使用Java語(yǔ)言寫(xiě)出其中一種。(8分)
三、簡(jiǎn)答題(參考答案)
1. ArrayList和Vector都是使用數(shù)組方式存儲(chǔ)數(shù)據(jù),此數(shù)組元素?cái)?shù)大于實(shí)際存儲(chǔ)的數(shù)據(jù)以便增加和插入元素,它們都允許直接按序號(hào)索引元素,但是插入元素要涉及數(shù)組元素移動(dòng)等內(nèi)存操作,所以索引數(shù)據(jù)快而插入數(shù)據(jù)慢,Vector由于使用了synchronized方法(線(xiàn)程安全),通常性能上較ArrayList差,而LinkedList使用雙向鏈表實(shí)現(xiàn)存儲(chǔ),按序號(hào)索引數(shù)據(jù)需要進(jìn)行前向或后向遍歷,但是插入數(shù)據(jù)時(shí)只需要記錄本項(xiàng)的前后項(xiàng)即可,所以插入速度較快。
2. 創(chuàng)建某類(lèi)對(duì)象時(shí),無(wú)論創(chuàng)建多少次該類(lèi)對(duì)象只有一份在內(nèi)存中,這就是單例模式。支持多線(xiàn)程調(diào)用,考慮線(xiàn)程安全,只需要加鎖即可。
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中類(lèi)的裝載是由ClassLoader和它的子類(lèi)來(lái)實(shí)現(xiàn)的,Java ClassLoader是一個(gè)重要的Java運(yùn)行時(shí)系統(tǒng)組件。它負(fù)責(zé)在運(yùn)行時(shí)查找和裝入類(lèi)文件的類(lèi)。
4.解決辦法:a. 利用JavaScript,在客戶(hù)端進(jìn)行校驗(yàn)。
b.程序判斷 c.使用PreparedStatement連接數(shù)據(jù)庫(kù)。(參數(shù)化) d.利用框架技術(shù)
5. Hibernate是一個(gè)開(kāi)放源代碼的對(duì)象關(guān)系映射框架,它對(duì)JDBC進(jìn)行了非常輕量級(jí)的對(duì)象封裝,使得Java程序員可以隨心所欲的使用對(duì)象編程思維來(lái)操縱數(shù)據(jù)庫(kù)。 Hibernate可以應(yīng)用在任何使用JDBC的場(chǎng)合,既可以在Java的客戶(hù)端程序使用,也可以在Servlet/JSP的Web應(yīng)用中使用。
一級(jí)緩存就是Session級(jí)別的緩存,一個(gè)Session做了一個(gè)查詢(xún)操作,它會(huì)把這個(gè)操作的結(jié)果放在一級(jí)緩存中,如果短時(shí)間內(nèi)這個(gè)
session(一定要同一個(gè)session)又做了同一個(gè)操作,那么hibernate直接從一級(jí)緩存中拿,而不會(huì)再去連數(shù)據(jù)庫(kù),取數(shù)據(jù);
二級(jí)緩存就是SessionFactory級(jí)別的緩存,顧名思義,就是查詢(xún)的時(shí)候會(huì)把查詢(xún)結(jié)果緩存到二級(jí)緩存中,如果同一個(gè)sessionFactory
創(chuàng)建的某個(gè)session執(zhí)行了相同的操作,hibernate就會(huì)從二級(jí)緩存中拿結(jié)果,而不會(huì)再去連接數(shù)據(jù)庫(kù);
6.插入排序、希爾排序、冒泡排序、快速排序、直接排序、歸并排序 下面以快速排序?yàn)槔?/p>
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
System.out.println(a[i]);
}
}
public int getMiddle(int[] list, int low, int high) {
int tmp =list[low]; //數(shù)組的第一個(gè)作為中軸
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 數(shù)組進(jìn)行一分為二
_quickSort(list, low, middle - 1); //對(duì)低字表進(jìn)行遞歸排序
_quickSort(list,middle + 1, high); //對(duì)高字表進(jìn)行遞歸排序
}
}
public void quick(int[] a2) {
if (a2.length > 0) { //查看數(shù)組是否為空
_quickSort(a2,0, a2.length - 1);
}
}
}
開(kāi)發(fā)人員筆試題二
1、簡(jiǎn)述 private、 protected、 public、 internal 修飾符的訪(fǎng)問(wèn)權(quán)限。
2、列舉ASP.NET 頁(yè)面之間傳遞值的幾種方式。
5、如果在一個(gè)B/S結(jié)構(gòu)的系統(tǒng)中需要傳遞變量值,但是又不能使用Session、
Cookie、Application,您有幾種方法進(jìn)行處理?
6、什么是裝箱和拆箱?
8、ASP.net的身份驗(yàn)證方式有哪些?分別是什么原理?
9、在C#中,string str = null 與 string str = “” 請(qǐng)盡量使用文字或圖
象說(shuō)明其中的區(qū)別。
10、SQLSERVER服務(wù)器中,給定表 table1 中有兩個(gè)字段 ID、LastUpdateDate,
ID表示更新的事務(wù)號(hào), LastUpdateDate表示更新時(shí)的服務(wù)器時(shí)間,請(qǐng)使用一句 SQL語(yǔ)句獲得最后更新的事務(wù)號(hào)
11、寫(xiě)出一條Sql語(yǔ)句:取出表A中第31到第40記錄(SQLServer,以自動(dòng)增長(zhǎng)的ID作為主鍵,注意:ID可能不是連續(xù)的。
12、能用foreach遍歷訪(fǎng)問(wèn)的對(duì)象需要實(shí)現(xiàn) ________________接口或聲明
________________方法的類(lèi)型。
14、接口是否可繼承接口? 抽象類(lèi)是否可實(shí)現(xiàn)(implements)接口? 抽象類(lèi)是否可
繼承實(shí)體類(lèi)(concrete class)?
15、try {}里有一個(gè)return語(yǔ)句,那么緊跟在這個(gè)try后的finally {}里的code會(huì)不會(huì)被執(zhí)行,什么時(shí)候被執(zhí)行,在return前還是后?
16、如何處理幾十萬(wàn)條并發(fā)數(shù)據(jù)?
17、Session有什么重大BUG,微軟提出了什么方法加以解決?
18、向服務(wù)器發(fā)送請(qǐng)求有幾種方式?
19、DataReader與Dataset有什么區(qū)別?
20、需要實(shí)現(xiàn)對(duì)一個(gè)字符串的處理,首先將該字符串首尾的空格去掉,如果字符串中
間還有連續(xù)空格的話(huà),僅保留一個(gè)空格,即允許字符串中間有多個(gè)空格,但連續(xù)的空 格數(shù)不可超過(guò)一個(gè).
21、什么叫做SQL注入,如何防止?請(qǐng)舉例說(shuō)明。
22、ADO.net中常用的對(duì)象有哪些?分別描述一下。
23、什么是SOAP,有哪些應(yīng)用?
25、float f=-123.567F; int i=(int)f;i的值現(xiàn)在是_____?
26、使用過(guò)那幾種框架?數(shù)據(jù)持久層框架,業(yè)務(wù)層框架。
更多相關(guān)文章:
1.KPMG筆試題
2.筆試題
5.ABB筆試題有感
6.asp筆試題集合
7.華為硬件筆試題
8.NEC筆試題型
9.安永筆試題,2017
【開(kāi)發(fā)人員筆試題】相關(guān)文章:
華為2017筆試題08-16
360筆試題目10-20
華為2017筆試試題08-10
桂林銀行筆試題筆經(jīng)10-21
嵌入式系統(tǒng)開(kāi)發(fā)人員C語(yǔ)言測(cè)試題11-16
眼線(xiàn)筆類(lèi)型-如何挑選眼線(xiàn)筆11-09