- 相關(guān)推薦
軟通動(dòng)力Java工程師筆試題
在學(xué)習(xí)和工作的日常里,我們經(jīng)常跟試題打交道,借助試題可以更好地檢查參考者的學(xué)習(xí)能力和其它能力。你知道什么樣的試題才能切實(shí)地幫助到我們嗎?下面是小編為大家收集的軟通動(dòng)力Java工程師筆試題,歡迎閱讀,希望大家能夠喜歡。
軟通動(dòng)力Java工程師筆試題 1
一、 問(wèn)答題
1、 請(qǐng)舉例說(shuō)明你見(jiàn)過(guò)的關(guān)于設(shè)計(jì)模式的應(yīng)用。
2、 Math.round(11.5)返回值是什么?Math.round(-11.5)返回是什么?
3、 請(qǐng)說(shuō)出取Stirng、數(shù)組、ArrayList長(zhǎng)度的方法或?qū)傩浴?/p>
4、 說(shuō)說(shuō)&和&&的區(qū)別。
5、 String和StringBuffer的區(qū)別(最好能舉實(shí)例說(shuō)明)。
6、 List、Set、Map是否繼承自Collection接口?
7、 接口是否可繼承接口?抽象類是否可實(shí)現(xiàn)(implements)接口?抽象類是否可繼承實(shí)體類(concrete class)?
8、 try{}里有一個(gè)return語(yǔ)句,那么緊跟著這個(gè)try后的finally{}里的code會(huì)不會(huì)被執(zhí)行,什么時(shí)候被執(zhí)行,在return前還是后?
9、 請(qǐng)說(shuō)說(shuō)下面的代碼片斷中的拼裝SQL語(yǔ)句有什么不好?
Public ResultSet getUserInfo(String name,String password) {
String sql = “select * from T_user “
+”where name=’”+name
+”’ and password=’”
+password+”’”;
Statement stmt = con.createStatement();
ResultSet rs = stmt.executeQuery(sql);
ResultSetMetaData rsmd = rs.getMetaData();
10、 請(qǐng)說(shuō)說(shuō)switch(expr1)中,expr1是否能作用在byte上,是否能作用在long上,是否能作用在String上?
11、 abstract class和interface有什么區(qū)別?
12、 請(qǐng)說(shuō)說(shuō)關(guān)系數(shù)據(jù)庫(kù)中的“事務(wù)“的概念(最好能舉例說(shuō)明)。
13、 如何知道一個(gè)對(duì)象進(jìn)入Http Session中,或者在Http Session中失效。
二、 SQL能力測(cè)試
問(wèn)題描述
表名:g_cardapply
字段 | 字段名 | 類型 | 長(zhǎng)度 |
g_applyno | 申請(qǐng)單號(hào)(關(guān)鍵字) | varchar | 8 |
g_applydate | 申請(qǐng)日期 | bigint | 8 |
g_state | 申請(qǐng)狀態(tài) | varchar | 2 |
表名:g_cardapplydetail
字段 | 字段名 | 類型 | 長(zhǎng)度 |
g_applyno | 申請(qǐng)單號(hào)(關(guān)鍵字) | varchar | 8 |
g_name | 申請(qǐng)人姓名 | varchar | 80 |
g_idcard | 申請(qǐng)人身份證號(hào) | varchar | 20 |
g_state | 申請(qǐng)狀態(tài) | varchar | 2 |
題目:
1、 查詢身份證號(hào)為440401430103082的`申請(qǐng)日期
2、 查詢同一個(gè)身份證號(hào)有兩條以上記錄的身份證號(hào)碼及記錄個(gè)數(shù)
3、 將身份證號(hào)為440401430103082的記錄在兩個(gè)表中的申請(qǐng)狀態(tài)均改為07
4、 刪除g_cardapplydetail表中所有姓李的記錄
軟通動(dòng)力Java工程師筆試題 2
1、在Java中,程序員可以在子類的構(gòu)造方法中使用關(guān)鍵字(A)調(diào)用父類的構(gòu)造方法。
a)super
b) this
c) extends
d) implements
2、在Java中,關(guān)于面向?qū)ο,說(shuō)法不正確的是(D)
a) 現(xiàn)實(shí)世界就是“面向?qū)ο蟮摹,面向(qū)ο缶褪遣捎谩艾F(xiàn)實(shí)模擬”的方法設(shè)計(jì)和開(kāi)發(fā)程序
b) 面向?qū)ο笤O(shè)計(jì)的過(guò)程就是抽象的過(guò)程
c) 面向?qū)ο蠹夹g(shù)是目前計(jì)算機(jī)軟件開(kāi)發(fā)中最流行的技術(shù)
d)Java和C語(yǔ)言都是完全面向?qū)ο蟮木幊陶Z(yǔ)言
3、對(duì)于以下Java代碼的運(yùn)行結(jié)果描述正確的是(C)
publicclassTest {
privatestaticfinalintflag=1;
publicstaticvoidmain(String[] args) {
for(inti=0;i<100;i++){
System.out.println(flag++);
}
}
}
a) 程序運(yùn)行100次,分別輸出0到99
b) 程序運(yùn)行101次,分別輸出0至100
c)程序編譯錯(cuò)誤
d) 程序可能出現(xiàn)死循環(huán)
4、在Java中,關(guān)于繼承的說(shuō)法錯(cuò)誤的是(C)
a) 使用extends關(guān)鍵字可以實(shí)現(xiàn)一個(gè)類繼承另一個(gè)類
b) 所有的Java類都直接或間接地繼承了java.lang.Object類
c)在子類的構(gòu)造方法中,必須顯示調(diào)用父類的構(gòu)造方法
d) 在子類的構(gòu)造方法中,可以通過(guò)super關(guān)鍵字調(diào)用父類的構(gòu)造方法
5、在Java中,以下關(guān)于static關(guān)鍵字的說(shuō)法不正確的是(AB)(選擇二項(xiàng))
a)static 可以用來(lái)修飾方法,但不可以修飾屬性
b)在方法里可以定義static變量
c) static修飾的屬性和方法稱為類屬性、類方法
d) 不使用static修飾的屬性和方法,通常稱為實(shí)例屬性、實(shí)例方法
6、運(yùn)行以下Java代碼,正確的輸出結(jié)果是(B)
publicstaticvoidmain(String[] args) {
Map
for(inti=0;i<3;i++){
schools.put(""+i, "stu"+i);
}
System.out.println(schools.get("1"));
}
a)stu0b)stu1c)stu2 d)stu3
7、以下Java代碼,橫線處應(yīng)填寫(xiě)(C)
try{
Class.forName(JDBC驅(qū)動(dòng)類);
Connection con=DriverManager.getConnection(JDBC URL,數(shù)據(jù)庫(kù)用戶名,密碼);
Statement stmt=con.createStatement();
Result rs=__________________________(“select * from stuinfo”);
while(________________){
//處理結(jié)果
…省略代碼….
}
}catch(Exception ex){
…省略代碼….
}
a)stmt.executeUpdate
rs.hasNext()
b) stmt.executeQuery
rs.hasNext()
c) stmt.executeQuery
rs.next()
d) stmt.executeUpdate
rs.next()
8、在Java中,假設(shè)下列每個(gè)選項(xiàng)中的兩個(gè)方法在同一個(gè)類中,則屬于方法重載的是(AD)(選擇二項(xiàng))
a) public void work() 和public void work(String type)
b)public String work(String type)和public void work(String type)
c)public void work1(String type)和public void work2(String type)
d)public void work(Strint type)和public void work(String type,int time)
9、在Java程序中,包含如下代碼:
publicstaticvoidmain(String[] args) {
List list=newArrayList();
list.add("Java");
list.add("C#");
list.add("HTML");
list.remove(1);
System.out.println("還有"+list.size()+"個(gè)元素!它們分別是:") ;
Iterator
while(it.hasNext()){
String str=it.next();
System.out.println(str);
}
}
則程序運(yùn)行結(jié)果描述正確的是( B )
a) 第一行編譯錯(cuò)誤
b)還有2個(gè)元素!它們分別是:
Java
HTML
c) 還有2個(gè)元素!它們分別是:
C#
HTML
d) 還有3個(gè)元素!它們分別是:
Java
C#
HTML
10、閱讀并分析如下的代碼,以下代碼的運(yùn)行結(jié)果是 (B)
publicstaticvoidmain(String[] args) {
Map map=newHashMap();
map.put("1", "張三");
map.put("1", "李四");
map.put("2", "王五");
map.put("2", "李四");
System.out.println(map.size());
}
a)1b)2c)3 d)4
11、下列Java代碼中,說(shuō)法正確的是(D)
publicclassAnimal {
protectedString name;
publicAnimal(String name){
this.name=name;
}
publicvoidshow(){
System.out.println("animal...");
}
}
publicclassCatextendsAnimal {
publicCat(String name){
super(name);
}
publicvoiddisp(){
System.out.println("我的名字是:"+name);
}
publicstaticvoidmain(String[] args) {
Cat miQi=newCat();
miQi.disp();
}
}
a) 正常運(yùn)行,輸出結(jié)果:animal...
b) 正常運(yùn)行,沒(méi)有任何輸出
c) 正常運(yùn)行,輸出結(jié)果:我的名字是:null
d)編譯錯(cuò)誤
12、閱讀以下Java代碼( A )
publicclassPerson {
publicvoidshow(){
System.out.println("人類!");
}
}
publicclassStudentextendsPerson {
publicvoidshow(){
System.out.println("學(xué)生!");
}
}
publicclassDoctorextendsPerson {
publicvoidshow(){
System.out.println("醫(yī)生!");
}
}
publicclassTemp {
publicstaticvoidmain(String[] args) {
Person per=newStudent();
Person doc=newDoctor();
per.show();
doc.show();
}
}
當(dāng)程序運(yùn)行后,輸出結(jié)果正確的是( A)
a)學(xué)生!
醫(yī)生!
b) 人類!
學(xué)生!
醫(yī)生!
c) 編譯錯(cuò)誤
d) 運(yùn)行錯(cuò)誤
13、如下Java代碼中,存在錯(cuò)誤的代碼行是(B)
publicabstractclassShape { //1
publicabstractdoublegetArea(){}; //2
}
publicclassSquareextendsShape {
privatedoubleheight=0;
publicSquare(doubleheight){
this.height=height;
}
publicdoublegetArea() { //3
return(this.height*this.height);
}
}
publicclassTest01 {
publicstaticvoidmain(String[] args) {
Shape square=newSquare(3); //4
System.out.println(square.getArea());
}
}
a)1b)2c)3 d)4
14、閱讀下列Java代碼,選項(xiàng)錯(cuò)誤的是(A)
publicclassStudent {
privateString name;
publicvoidsetName(String name){
this.name=name;
}
publicString getName(){
returnname;
}
}
a)如果去掉setName方法中的this也是正確的
b) 這是一個(gè)可以讀寫(xiě)的屬性
c) 采用set、get方法封裝屬性,可以實(shí)現(xiàn)對(duì)屬性的訪問(wèn)控制
d) this.name=name;中等號(hào)右邊的name表示方法中的參數(shù),等號(hào)左邊的name在這里表示類中的屬性
15、閱讀如下Java代碼,其中錯(cuò)誤的行是(C)
publicclassStudent {
privateString stuId;
publicvoidsetStuId(String stuId)throwsException{ //1
if(stuId.length()!=4){ //2
throwsnewException("學(xué)號(hào)必須是4位"); //3
}else{
this.stuId=stuId;
}
}
}
a)1
b)2
c)3
d)全部正確
16、以下Java程序的輸出結(jié)果是(B)
publicclassTest {
publicstaticvoidmain(String[] args) {
Map
map.put(1, "JAVA");
map.put(2, "NET");
map.put(4, "Android");
map.remove("Android");
for(Integer key:map.keySet()){
System.out.println(map.get(key));
}
}
}
a) JAVA
.NET
b) JAVA
. NET
Android
c) 編譯錯(cuò)誤
d) 程序運(yùn)行時(shí)出現(xiàn)空指針異常
17、在Java中,以下關(guān)于DAO模式描述錯(cuò)誤的是(D)
a) DAO位于業(yè)務(wù)邏輯和持久化數(shù)據(jù)之間,實(shí)現(xiàn)對(duì)持久化數(shù)據(jù)的訪問(wèn)
b) 一個(gè)典型的DAO模式主要由DAO接口、DAO實(shí)現(xiàn)類、實(shí)體類、數(shù)據(jù)庫(kù)連接和關(guān)閉類組成
c) DAO模式可以隔離不同數(shù)據(jù)庫(kù)的實(shí)現(xiàn),提高了代碼擴(kuò)展性和系統(tǒng)的可移植性
d) 采用DAO模式,即使使用不同的.數(shù)據(jù)庫(kù),數(shù)據(jù)庫(kù)連接中的字符串也不需要改變
18、下列對(duì)于抽象類和抽象方法錯(cuò)誤的是(A)
a) 抽象類不能是靜態(tài)的,但可以是密封的
b) 抽象類不可以被實(shí)例化
c) 抽象為中的方法不一定都是抽象方法
d) 抽象父類可以在某種程序上起到約束子類行為的作用
19、關(guān)于Java中集合的說(shuō)法正確的是(A)
a) List和Set接口都屬性Collection接口
b) List和Map接口都屬性Collection接口
c) Map和Set接口都屬于List接口
d) List、Set和Map都屬于Collection接口
20、下列選項(xiàng)中關(guān)于Java中類的繼承的說(shuō)法錯(cuò)誤的是(B)
a) 使用繼承可以有效的實(shí)現(xiàn)復(fù)用代碼
b) 在Java中一個(gè)類可以有多個(gè)直接父類,從而繼承更多的功能
c) 在創(chuàng)建一個(gè)子類對(duì)象時(shí),會(huì)首先創(chuàng)建父類對(duì)象,再創(chuàng)建子類對(duì)象
d) 在定義一個(gè)類時(shí),沒(méi)有使用extends關(guān)鍵字,那么這個(gè)類將繼承Object類
【軟通動(dòng)力Java工程師筆試題】相關(guān)文章:
東軟java筆試題04-03
中軟Java筆試題目10-09
2013中軟校招JAVA開(kāi)發(fā)工程師筆試題10-27
Java工程師筆試題04-03
Java工程師面試題03-29
Java工程師面試題及答案03-14
java中級(jí)工程師面試題03-30
某公司Java工程師面試題筆試題目04-03