軟件開(kāi)發(fā)工程師JAVA筆試題
java是綜合性比較難的一門學(xué)科,下面YJBYS小編為大家精心搜集了關(guān)于軟件開(kāi)發(fā)工程師的JAVA筆試題,歡迎大家參考借鑒,希望可以幫助到大家!
一、選擇題
1、下面哪項(xiàng)是不合法的標(biāo)識(shí)符:()
A. $persons B. TwoUsers C. *point D. _endline E. final
2、下列運(yùn)算符合法的是( )
A.&& B.<> C.if D.:=
3、下面描述中哪兩項(xiàng)相等:()[選擇兩項(xiàng)]
4、設(shè)float x = 1,y = 2,z = 3,則表達(dá)式 y+=z–/++x的值是:()
A. 3.5 B.3 C. 4 D. 5
5、下面的哪些敘述為真:()
equals()方法判定引用值是否指向同一對(duì)象
==操作符判定兩個(gè)不同的對(duì)象的內(nèi)容和類型是否一致
equal()方法只有在兩個(gè)對(duì)象的內(nèi)容一致時(shí)返回true
類File重寫方法equals()在兩個(gè)不同的對(duì)象的內(nèi)容和類型一致時(shí)返回true
6、如果一個(gè)對(duì)象僅僅聲明實(shí)現(xiàn)了cloneable接口,但是不聲明clone方法,外部能夠調(diào)用其clone方法嗎?()
A. 能 B. 不能 C. 不確定
7、下列說(shuō)法錯(cuò)誤的有( )
A. 能被java.exe成功運(yùn)行的java class文件必須有main()方法
B. J2SDK就是Java API
C. Appletviewer.exe可利用jar選項(xiàng)運(yùn)行.jar文件
D. 能被Appletviewer成功運(yùn)行的java class文件必須有main()方法
8、下列正確的有( )
A. call by value不會(huì)改變實(shí)際參數(shù)的數(shù)值
B. call by reference能改變實(shí)際參數(shù)的參考地址
C. call by reference不能改變實(shí)際參數(shù)的參考地址
D. call by reference能改變實(shí)際參數(shù)的內(nèi)容
9、下列說(shuō)法錯(cuò)誤的有( )
A. 數(shù)組是一種對(duì)象
B. 數(shù)組屬于一種原生類
C. int number=[]={31,23,33,43,35,63}
D. 數(shù)組的大小可以任意改變
1、不能用來(lái)修飾interface的有( )
A.private B.public C.protected D.static
11、關(guān)于Float,下列說(shuō)法正確的是
A.Float是一個(gè)類
B.Float在java.lang包中
C.Float a=1.是正確的賦值方法
D.Float a= new Float(1.)是正確的賦值方法
12、下列哪種說(shuō)法是正確的( )
A. 實(shí)例方法可直接調(diào)用超類的實(shí)例方法
B. 實(shí)例方法可直接調(diào)用超類的類方法
C. 實(shí)例方法可直接調(diào)用其他類的實(shí)例方法
D. 實(shí)例方法可直接調(diào)用本類的類方法
13、下列說(shuō)法錯(cuò)誤的有( )
A.在類方法中可用this來(lái)調(diào)用本類的類方法
B.在類方法中調(diào)用本類的類方法時(shí)可直接調(diào)用
C.在類方法中只能調(diào)用本類中的類方法
D.在類方法中絕對(duì)不能調(diào)用實(shí)例方法
14、下面說(shuō)法哪些是正確的?
A.Applet可以訪問(wèn)本地文件
B.對(duì)static方法的調(diào)用不需要類實(shí)例
C.socket類在java.lang中
D.127...1地址代表本機(jī)
15、類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都將執(zhí)行 B. 行4執(zhí)行,行6不執(zhí)行
C. 行6執(zhí)行,行4不執(zhí)行 D. 行4、行6都不執(zhí)行
17、下面程序的執(zhí)行結(jié)果為:()
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”);
}
當(dāng) 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類的方法有:()
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í)例變量是類的成員變量
B. 實(shí)例變量是用static關(guān)鍵字聲明的
C. 方法變量在方法執(zhí)行時(shí)創(chuàng)建
D. 方法變量在使用之前必須初始化
23、對(duì)于下列代碼:
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;
}
}
下列哪些表達(dá)式返回值為’true’? ( )
A .s1 = = s2; B. s2 = = s3; C. m = = s1; D. s1.equals(m)
24、哪個(gè)類可用于處理 Unicode?
A .InputStreamReader B .BufferedReader C.Writer D.PipedInputStream
25、已知如下說(shuō)明:
TextArea ta = new TextArea (̶Hello”, 5, 5);
請(qǐng)問(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、當(dāng) Frame 改變大小時(shí),放在其中的按鈕大小不變,則使用如下哪個(gè) layout? ( )
A. FlowLayout
B. CardLayout
C. North and South of BorderLayout
D. East and West of BorderLayout
E. GridLayout
27、已知如下的命令執(zhí)行 java MyTest a b c
請(qǐng)問(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)建數(shù)組的正確語(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中的集合類(如Vector)可以用來(lái)存儲(chǔ)任何類型的對(duì)象,且大小可以自動(dòng)調(diào)整。但需要事先知道所存儲(chǔ)對(duì)象的類型,才能正常使用。
B:在java中,我們可以用違例(Exception)來(lái)拋出一些并非錯(cuò)誤的消息,但這樣比直接從函數(shù)返回一個(gè)結(jié)果要更大的系統(tǒng)開(kāi)銷。
C:java接口包含函數(shù)聲明和變量聲明。
D:java中,子類不可以訪問(wèn)父類的私有成員和受保護(hù)的成員。
3、 以下關(guān)于數(shù)據(jù)庫(kù)范式的描述,哪些是錯(cuò)誤的()
A. 如果把多個(gè)數(shù)據(jù)項(xiàng)用一個(gè)大的 String 表示為一個(gè)字段,則不滿足第一范式
B. 滿足數(shù)據(jù)庫(kù)范式使得數(shù)據(jù)庫(kù)的效率更高
C. 如果滿足更高的范式,則必須首先滿足低級(jí)別的范式
D. 數(shù)據(jù)庫(kù)第二范式要求把表中與所有鍵沒(méi)有直接關(guān)系的數(shù)據(jù)全部拆分到其他表中
31、在Hibernate中,元素有一個(gè)cascade屬性,如果希望Hibernate級(jí)聯(lián)保存集合中的對(duì)象,casecade屬性應(yīng)該取什么值?()
A. none B. save C. delete D. save-update
32、以下程序代碼對(duì)Customer的name屬性修改了兩次:
tx = session.beginTransaction();
Customer customer=(Customer)session.load(Customer.class, new Long(1));
customer.setName(̶Jack”);
customer.setName(̶Mike”);
tx.commit();
執(zhí)行以上程序,Hibernate需要向數(shù)據(jù)庫(kù)提交幾條update語(yǔ)句?()
A. B.1 C. 2 D. 3
33、假設(shè)對(duì)Customer類的orders集合采用延遲檢索策略,編譯或運(yùn)行以下程序,會(huì)出現(xiàn)什么情況?()
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. 編譯出錯(cuò) B. 編譯通過(guò),并正常運(yùn)行 C. 編譯通過(guò),但運(yùn)行時(shí)拋出異常
34、設(shè)棧最大長(zhǎ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)幫助進(jìn)行設(shè)計(jì),請(qǐng)問(wèn)一下那些圖形不是 UML 的圖形類型()
A. 類圖 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());
}
}
上面代碼是否有錯(cuò),如果有錯(cuò),錯(cuò)誤在何處?
2、詳細(xì)解釋下面的語(yǔ)句:
Class.class.getClass()
3、解釋一下什么是MVC,IOC,AOP,ORM,JNDI,,Hibernate,SSO、Portal?
4、什么是EJB?EJB和JAVA BEAN有何區(qū)別?
5、現(xiàn)有Mysql數(shù)據(jù)庫(kù),寫Spring + Hibernate的配置文件
數(shù)據(jù)IP:127...1
數(shù)據(jù)庫(kù):bdtc
用戶名:root
密碼:mysql
6、請(qǐng)簡(jiǎn)要描述一下J2EE應(yīng)用中的class loader的層次結(jié)構(gòu)?
7、編寫一個(gè)截取字符串的函數(shù),輸入為一個(gè)字符串和字節(jié)數(shù),輸出為按字節(jié)截取的字符串。 但是要保證漢字不被截半個(gè),如“我ABC”4,應(yīng)該截為“我AB”,輸入“我ABC漢DEF”,應(yīng)該輸出為“我ABC”而不是“我ABC+漢的半個(gè)”。
8、XML 的解析技術(shù)有哪些?區(qū)別是什么?你在項(xiàng)目中用到了xml技術(shù)的哪些方面?如何實(shí)現(xiàn)的?
9、寫一段代碼,實(shí)現(xiàn)銀行轉(zhuǎn)帳功能:
接口定義如下:
Public interface ITransfer{
/**
* 銀行內(nèi)部轉(zhuǎn)帳,從轉(zhuǎn)出帳號(hào)中扣除轉(zhuǎn)帳金額,給轉(zhuǎn)入帳號(hào)增加轉(zhuǎn)帳金額,需要保證以上兩個(gè)操作
* 要么同時(shí)成功,要么同時(shí)失敗
* fromAccountId 轉(zhuǎn)出帳號(hào)
* outAccountId 轉(zhuǎn)入帳號(hào)
* amount 轉(zhuǎn)帳金額
**/
Public void transferInner(String fromAccountId,String outAccountId,
BigDecimal amount);
/**
* 外部轉(zhuǎn)帳-轉(zhuǎn)出,從轉(zhuǎn)出帳號(hào)中扣除轉(zhuǎn)帳金額
* fromAccountId 轉(zhuǎn)出帳號(hào)
* amount 轉(zhuǎn)帳金額
**/
Public void transferOut(String fromAccountId,BigDecimal amount);
/**
* 外部轉(zhuǎn)帳-轉(zhuǎn)入,給轉(zhuǎn)入帳號(hào)增加轉(zhuǎn)帳金額
* toAccountId 轉(zhuǎn)入帳號(hào)
* amount 轉(zhuǎn)帳金額
Public void transerIn (String toAccountId, BigDecimal amount);
}
請(qǐng)編寫你的實(shí)現(xiàn)類,來(lái)實(shí)現(xiàn)上述接口
Account表
字段:accountId , 主鍵 varchar2(32), 用戶帳號(hào)
字段:amount , 金額 number(18,3)
1、SQL問(wèn)答題
表結(jié)構(gòu):
1、 表名:g_cardapply
字段(字段名/類型/長(zhǎng)度):
g_applyno varchar 8: //申請(qǐng)單號(hào) (關(guān)鍵字)
g_applydate bigint 8: //申請(qǐng)日期
g_state varchar 2: //申請(qǐng)狀態(tài)
2、 表名:g_cardapplydetail
字段(字段名/類型/長(zhǎng)度):
g_applyno varchar 8: //申請(qǐng)單號(hào) (關(guān)鍵字)
g_name varchar 3: //申請(qǐng)人姓名
g_idcard varchar 18: //申請(qǐng)人身份證號(hào)
g_state varchar 2: //申請(qǐng)狀態(tài)
其中,兩個(gè)表的關(guān)聯(lián)字為申請(qǐng)單號(hào)
題目:
1、 查詢身份證號(hào)碼為61131981222382的申請(qǐng)日期
2、 查詢同一個(gè)身份證號(hào)碼有兩條以上記錄的身份證號(hào)碼及記錄個(gè)數(shù)
3、 將身份證號(hào)碼為61131981222382的記錄在兩個(gè)表中的申請(qǐng)狀態(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