軟件開(kāi)發(fā)工程師JAVA筆試題
java是綜合性比較難的一門(mén)學(xué)科,下面YJBYS小編為大家精心搜集了關(guān)于軟件開(kāi)發(fā)工程師的JAVA筆試題,歡迎大家參考借鑒,希望可以幫助到大家!
一、選擇題
1、下面哪項是不合法的標識符:()
A. $persons B. TwoUsers C. *point D. _endline E. final
2、下列運算符合法的是( )
A.&& B.<> C.if D.:=
3、下面描述中哪兩項相等:()[選擇兩項]
4、設float x = 1,y = 2,z = 3,則表達式 y+=z–/++x的值是:()
A. 3.5 B.3 C. 4 D. 5
5、下面的哪些敘述為真:()
equals()方法判定引用值是否指向同一對象
==操作符判定兩個(gè)不同的對象的內容和類(lèi)型是否一致
equal()方法只有在兩個(gè)對象的內容一致時(shí)返回true
類(lèi)File重寫(xiě)方法equals()在兩個(gè)不同的對象的內容和類(lèi)型一致時(shí)返回true
6、如果一個(gè)對象僅僅聲明實(shí)現了cloneable接口,但是不聲明clone方法,外部能夠調用其clone方法嗎?()
A. 能 B. 不能 C. 不確定
7、下列說(shuō)法錯誤的有( )
A. 能被java.exe成功運行的java class文件必須有main()方法
B. J2SDK就是Java API
C. Appletviewer.exe可利用jar選項運行.jar文件
D. 能被Appletviewer成功運行的java class文件必須有main()方法
8、下列正確的有( )
A. call by value不會(huì )改變實(shí)際參數的數值
B. call by reference能改變實(shí)際參數的參考地址
C. call by reference不能改變實(shí)際參數的參考地址
D. call by reference能改變實(shí)際參數的內容
9、下列說(shuō)法錯誤的有( )
A. 數組是一種對象
B. 數組屬于一種原生類(lèi)
C. int number=[]={31,23,33,43,35,63}
D. 數組的大小可以任意改變
1、不能用來(lái)修飾interface的有( )
A.private B.public C.protected D.static
11、關(guān)于Float,下列說(shuō)法正確的是
A.Float是一個(gè)類(lèi)
B.Float在java.lang包中
C.Float a=1.是正確的賦值方法
D.Float a= new Float(1.)是正確的賦值方法
12、下列哪種說(shuō)法是正確的( )
A. 實(shí)例方法可直接調用超類(lèi)的實(shí)例方法
B. 實(shí)例方法可直接調用超類(lèi)的類(lèi)方法
C. 實(shí)例方法可直接調用其他類(lèi)的實(shí)例方法
D. 實(shí)例方法可直接調用本類(lèi)的類(lèi)方法
13、下列說(shuō)法錯誤的有( )
A.在類(lèi)方法中可用this來(lái)調用本類(lèi)的類(lèi)方法
B.在類(lèi)方法中調用本類(lèi)的類(lèi)方法時(shí)可直接調用
C.在類(lèi)方法中只能調用本類(lèi)中的類(lèi)方法
D.在類(lèi)方法中絕對不能調用實(shí)例方法
14、下面說(shuō)法哪些是正確的?
A.Applet可以訪(fǎng)問(wèn)本地文件
B.對static方法的調用不需要類(lèi)實(shí)例
C.socket類(lèi)在java.lang中
D.127...1地址代表本機
15、類(lèi)Test1、Test2定義如下:
public class Test1 {
public float aMethod(float a, float b) throws
IOException { }
}
public class Test2 extends Test1 {
//Line6
}
將以下()方法插入行6是不合法的。
float aMethod (float a, float b) {}
public int aMethod (int a, int b) throws Exception {}
public float aMethod (float P, float q) {}
public int aMethod (int a, int b) throws IOException {}
16、關(guān)于以下程序段,正確的說(shuō)法是:()
1. String s1 = “abc” + “def”;
2. String s2 = new String(s1);
3. if(s1.equals(s2))
4. System.out.println(“.equals() succeeded”);
5. if(s1 == s2)
6. System.out.println(“== succeeded”);
A. 行4與行6都將執行 B. 行4執行,行6不執行
C. 行6執行,行4不執行 D. 行4、行6都不執行
17、下面程序的執行結果為:()
public class Test {
static Boolean foo(char c) {
System.out.println(c);
return true;
}
public static void main(String[] args) {
int i = ;
for (foo(‘A’); foo(‘B’)&&(i<2); foo(‘C’)) {
i++;
foo(‘D’);
}
}
}
A. ABDCBDCB B. ABCDABCD
C. Compilation fails C. An exception is thrown at runtime
18、閱讀下面的程序
public class Outer {
public void someOuterMethod() {
//Line3
}
public class Inner() {}
public static void main(String[] args) {
Outer o = new Outer();
//Line8
}
}
Which instantiates is an instance of Inner? ()
A. new Inner(); // At line3 B. new Inner(); // At line 8
C. new o.Inner(); // At line8 C. new Outer.inner(); // At line 8
19、選出能正確賦值的':
public class TestA {
private int a;
public int change(int m) {
return m;
}
}
public class TestB extend TestA{
public int b;
public static void main() {
TestA aa = new TestA();
TestB bb = new TestB();
int k;
// Line 13
}
}
在Line13處可以正確賦值的有: ()
k= m; B. k=b; C. k=aa.a; D. k=bb.change(3); E. k=bb.a
2、已知如下代碼:
switch (m)
{
case : System.out.println(̶Condition ″);
case 1: System.out.println(̶Condition 1″);
case 2: System.out.println(̶Condition 2″);
case 3: System.out.println(̶Condition 3″);break;
default: System.out.println(̶Other Condition”);
}
當 m 的值為什么時(shí)輸出 ̶Condition 2″? ( )
A . B .1 C. 2 D . 3 E.4 F. None
21、給出程序段
public class Parent
{
public int addValue(int a,int b)
{
int s;
s=a+b;
return s;
}
}
class Child extends Parent{}
可以加在Child類(lèi)的方法有:()
A. int addValue(int a,int b){}
B. public void addValue(int a,int b){}
C. public int addValue(int a){}
D. public int addValue(int a,int b){}
22、下述哪些說(shuō)法是正確的?()
A. 實(shí)例變量是類(lèi)的成員變量
B. 實(shí)例變量是用static關(guān)鍵字聲明的
C. 方法變量在方法執行時(shí)創(chuàng )建
D. 方法變量在使用之前必須初始化
23、對于下列代碼:
public class Sample{
long length;
public Sample(long l){ length = l; }
public static void main(String arg[]){
Sample s1, s2, s3;
s1 = new Sample(21L);
s2 = new Sample(21L);
s3 = s2;
long m =21L;
}
}
下列哪些表達式返回值為’true’? ( )
A .s1 = = s2; B. s2 = = s3; C. m = = s1; D. s1.equals(m)
24、哪個(gè)類(lèi)可用于處理 Unicode?
A .InputStreamReader B .BufferedReader C.Writer D.PipedInputStream
25、已知如下說(shuō)明:
TextArea ta = new TextArea (̶Hello”, 5, 5);
請問(wèn)哪個(gè)語(yǔ)句是正確的?( )
A . The maximum number of characters in a line is 5.
B. The displayed height is 5 lines otherwise constrain.
C. The displayed string can use multiple fonts.
D. The displayed strings are editable.
26、當 Frame 改變大小時(shí),放在其中的按鈕大小不變,則使用如下哪個(gè) layout? ( )
A. FlowLayout
B. CardLayout
C. North and South of BorderLayout
D. East and West of BorderLayout
E. GridLayout
27、已知如下的命令執行 java MyTest a b c
請問(wèn)哪個(gè)語(yǔ)句是正確的? ( )
A . args[] = ̶MyTest a b c”
B . args[] = ̶MyTest”
C . args[] = ̶a”
D . args[1]= ̶b”
28、下面哪個(gè)語(yǔ)句是創(chuàng )建數組的正確語(yǔ)句?( )
A . float f[][] = new float[6][6];
B . float []f[] = new float[6][6];
C . float f[][] = new float[][6];
D . float [][]f = new float[6][6];
E . float [][]f = new float[6][];
29、下面敘述那些是正確的?()
A:java中的集合類(lèi)(如Vector)可以用來(lái)存儲任何類(lèi)型的對象,且大小可以自動(dòng)調整。但需要事先知道所存儲對象的類(lèi)型,才能正常使用。
B:在java中,我們可以用違例(Exception)來(lái)拋出一些并非錯誤的消息,但這樣比直接從函數返回一個(gè)結果要更大的系統開(kāi)銷(xiāo)。
C:java接口包含函數聲明和變量聲明。
D:java中,子類(lèi)不可以訪(fǎng)問(wèn)父類(lèi)的私有成員和受保護的成員。
3、 以下關(guān)于數據庫范式的描述,哪些是錯誤的()
A. 如果把多個(gè)數據項用一個(gè)大的 String 表示為一個(gè)字段,則不滿(mǎn)足第一范式
B. 滿(mǎn)足數據庫范式使得數據庫的效率更高
C. 如果滿(mǎn)足更高的范式,則必須首先滿(mǎn)足低級別的范式
D. 數據庫第二范式要求把表中與所有鍵沒(méi)有直接關(guān)系的數據全部拆分到其他表中
31、在Hibernate中,元素有一個(gè)cascade屬性,如果希望Hibernate級聯(lián)保存集合中的對象,casecade屬性應該取什么值?()
A. none B. save C. delete D. save-update
32、以下程序代碼對Customer的name屬性修改了兩次:
tx = session.beginTransaction();
Customer customer=(Customer)session.load(Customer.class, new Long(1));
customer.setName(̶Jack”);
customer.setName(̶Mike”);
tx.commit();
執行以上程序,Hibernate需要向數據庫提交幾條update語(yǔ)句?()
A. B.1 C. 2 D. 3
33、假設對Customer類(lèi)的orders集合采用延遲檢索策略,編譯或運行以下程序,會(huì )出現什么情況?()
Session session=sessionFactory.openSession();
tx = session.beginTransaction();
Customer customer=(Customer)session.get(Customer.class,new Long(1));
tx.commit();
session.close();
Iterator orderIterator=customer.getOrders().iterator();
A. 編譯出錯 B. 編譯通過(guò),并正常運行 C. 編譯通過(guò),但運行時(shí)拋出異常
34、設棧最大長(cháng)度為 3 ,入棧序列為 1 , 2 , 3 , 4 , 5 , 6 ,則不可能得出棧序列是()
A. 1 , 2 , 3 , 4 , 5 , 6
B. 2 , 1 , 3 , 4 , 5 , 6
C. 3 , 4 , 2 , 1 , 5 , 6
D. 4 , 3 , 2 , 1 , 5 , 6
35、在 UML 方法中,使用多種類(lèi)型的圖形來(lái)幫助進(jìn)行設計,請問(wèn)一下那些圖形不是 UML 的圖形類(lèi)型()
A. 類(lèi)圖 B. 實(shí)體關(guān)系圖 C. 序列圖 D. 活動(dòng)圖
二、問(wèn)答題
1、閱讀下面的代碼
interface Playable {
void play();
}
interface Bounceable {
void play();
}
interface Rollable extends Playable, Bounceable {
Ball ball = new Ball(̶PingPang”);
}
class Ball implements Rollable {
private String name;
public String getName() {
return name;
}
public Ball(String name) {
this.name = name;
}
public void play() {
ball = new Ball(̶Football”);
System.out.println(ball.getName());
}
}
上面代碼是否有錯,如果有錯,錯誤在何處?
2、詳細解釋下面的語(yǔ)句:
Class.class.getClass()
3、解釋一下什么是MVC,IOC,AOP,ORM,JNDI,,Hibernate,SSO、Portal?
4、什么是EJB?EJB和JAVA BEAN有何區別?
5、現有Mysql數據庫,寫(xiě)Spring + Hibernate的配置文件
數據IP:127...1
數據庫:bdtc
用戶(hù)名:root
密碼:mysql
6、請簡(jiǎn)要描述一下J2EE應用中的class loader的層次結構?
7、編寫(xiě)一個(gè)截取字符串的函數,輸入為一個(gè)字符串和字節數,輸出為按字節截取的字符串。 但是要保證漢字不被截半個(gè),如“我ABC”4,應該截為“我AB”,輸入“我ABC漢DEF”,應該輸出為“我ABC”而不是“我ABC+漢的半個(gè)”。
8、XML 的解析技術(shù)有哪些?區別是什么?你在項目中用到了xml技術(shù)的哪些方面?如何實(shí)現的?
9、寫(xiě)一段代碼,實(shí)現銀行轉帳功能:
接口定義如下:
Public interface ITransfer{
/**
* 銀行內部轉帳,從轉出帳號中扣除轉帳金額,給轉入帳號增加轉帳金額,需要保證以上兩個(gè)操作
* 要么同時(shí)成功,要么同時(shí)失敗
* fromAccountId 轉出帳號
* outAccountId 轉入帳號
* amount 轉帳金額
**/
Public void transferInner(String fromAccountId,String outAccountId,
BigDecimal amount);
/**
* 外部轉帳-轉出,從轉出帳號中扣除轉帳金額
* fromAccountId 轉出帳號
* amount 轉帳金額
**/
Public void transferOut(String fromAccountId,BigDecimal amount);
/**
* 外部轉帳-轉入,給轉入帳號增加轉帳金額
* toAccountId 轉入帳號
* amount 轉帳金額
Public void transerIn (String toAccountId, BigDecimal amount);
}
請編寫(xiě)你的實(shí)現類(lèi),來(lái)實(shí)現上述接口
Account表
字段:accountId , 主鍵 varchar2(32), 用戶(hù)帳號
字段:amount , 金額 number(18,3)
1、SQL問(wèn)答題
表結構:
1、 表名:g_cardapply
字段(字段名/類(lèi)型/長(cháng)度):
g_applyno varchar 8: //申請單號 (關(guān)鍵字)
g_applydate bigint 8: //申請日期
g_state varchar 2: //申請狀態(tài)
2、 表名:g_cardapplydetail
字段(字段名/類(lèi)型/長(cháng)度):
g_applyno varchar 8: //申請單號 (關(guān)鍵字)
g_name varchar 3: //申請人姓名
g_idcard varchar 18: //申請人身份證號
g_state varchar 2: //申請狀態(tài)
其中,兩個(gè)表的關(guān)聯(lián)字為申請單號
題目:
1、 查詢(xún)身份證號碼為61131981222382的申請日期
2、 查詢(xún)同一個(gè)身份證號碼有兩條以上記錄的身份證號碼及記錄個(gè)數
3、 將身份證號碼為61131981222382的記錄在兩個(gè)表中的申請狀態(tài)均改為7
4、 刪除g_cardapplydetail表中所有姓李的記錄
1、 select g_applydate from g_cardapply a,g_cardapplydetail b where a.g_applyno=b.g_applyno and b.g_idcard=’61131981222382’
2、 select g_idcard,count(g_applyno) from g_cardapplydetail group by g_idcard having count(g_applyno)>2
3、 update g_cardapply a,g_cardapplydetail b set a.g_state=’7’,b.g_state=’7’ where a.g_applyno=b.applyno and b.g_idcard=’ 61131981222382’
4、 delete from g_cardapplydetail where g_name like ‘李%’
【軟件開(kāi)發(fā)工程師JAVA筆試題】相關(guān)文章:
Java軟件開(kāi)發(fā)工程師筆試題寶典10-15
java軟件開(kāi)發(fā)工程師簡(jiǎn)歷范文10-13
Java工程師筆試題11-15
軟件工程師:java軟件開(kāi)發(fā)簡(jiǎn)歷范文10-15
軟件開(kāi)發(fā)工程師筆試題12-13
Java工程師面試題11-09
Java軟件開(kāi)發(fā)工程師個(gè)人簡(jiǎn)歷范文模板10-05