軟件開發工程師JAVA筆試題
java是綜合性比較難的一門學科,下面YJBYS小編為大家精心搜集了關于軟件開發工程師的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()方法判定引用值是否指向同一對象
==操作符判定兩個不同的對象的內容和類型是否一致
equal()方法只有在兩個對象的內容一致時返回true
類File重寫方法equals()在兩個不同的對象的內容和類型一致時返回true
6、如果一個對象僅僅聲明實現了cloneable接口,但是不聲明clone方法,外部能夠調用其clone方法嗎?()
A. 能 B. 不能 C. 不確定
7、下列說法錯誤的有( )
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不會改變實際參數的數值
B. call by reference能改變實際參數的參考地址
C. call by reference不能改變實際參數的參考地址
D. call by reference能改變實際參數的內容
9、下列說法錯誤的有( )
A. 數組是一種對象
B. 數組屬于一種原生類
C. int number=[]={31,23,33,43,35,63}
D. 數組的大小可以任意改變
1、不能用來修飾interface的有( )
A.private B.public C.protected D.static
11、關于Float,下列說法正確的是
A.Float是一個類
B.Float在java.lang包中
C.Float a=1.是正確的賦值方法
D.Float a= new Float(1.)是正確的賦值方法
12、下列哪種說法是正確的( )
A. 實例方法可直接調用超類的實例方法
B. 實例方法可直接調用超類的類方法
C. 實例方法可直接調用其他類的實例方法
D. 實例方法可直接調用本類的類方法
13、下列說法錯誤的有( )
A.在類方法中可用this來調用本類的類方法
B.在類方法中調用本類的類方法時可直接調用
C.在類方法中只能調用本類中的類方法
D.在類方法中絕對不能調用實例方法
14、下面說法哪些是正確的?
A.Applet可以訪問本地文件
B.對static方法的調用不需要類實例
C.socket類在java.lang中
D.127...1地址代表本機
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、關于以下程序段,正確的說法是:()
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 的值為什么時輸出 ̶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、下述哪些說法是正確的?()
A. 實例變量是類的成員變量
B. 實例變量是用static關鍵字聲明的
C. 方法變量在方法執行時創建
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、哪個類可用于處理 Unicode?
A .InputStreamReader B .BufferedReader C.Writer D.PipedInputStream
25、已知如下說明:
TextArea ta = new TextArea (̶Hello”, 5, 5);
請問哪個語句是正確的?( )
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 改變大小時,放在其中的按鈕大小不變,則使用如下哪個 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
請問哪個語句是正確的? ( )
A . args[] = ̶MyTest a b c”
B . args[] = ̶MyTest”
C . args[] = ̶a”
D . args[1]= ̶b”
28、下面哪個語句是創建數組的正確語句?( )
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)可以用來存儲任何類型的對象,且大小可以自動調整。但需要事先知道所存儲對象的類型,才能正常使用。
B:在java中,我們可以用違例(Exception)來拋出一些并非錯誤的消息,但這樣比直接從函數返回一個結果要更大的系統開銷。
C:java接口包含函數聲明和變量聲明。
D:java中,子類不可以訪問父類的私有成員和受保護的成員。
3、 以下關于數據庫范式的描述,哪些是錯誤的()
A. 如果把多個數據項用一個大的 String 表示為一個字段,則不滿足第一范式
B. 滿足數據庫范式使得數據庫的效率更高
C. 如果滿足更高的范式,則必須首先滿足低級別的范式
D. 數據庫第二范式要求把表中與所有鍵沒有直接關系的數據全部拆分到其他表中
31、在Hibernate中,元素有一個cascade屬性,如果希望Hibernate級聯保存集合中的對象,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語句?()
A. B.1 C. 2 D. 3
33、假設對Customer類的orders集合采用延遲檢索策略,編譯或運行以下程序,會出現什么情況?()
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. 編譯通過,并正常運行 C. 編譯通過,但運行時拋出異常
34、設棧最大長度為 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 方法中,使用多種類型的圖形來幫助進行設計,請問一下那些圖形不是 UML 的圖形類型()
A. 類圖 B. 實體關系圖 C. 序列圖 D. 活動圖
二、問答題
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、詳細解釋下面的語句:
Class.class.getClass()
3、解釋一下什么是MVC,IOC,AOP,ORM,JNDI,,Hibernate,SSO、Portal?
4、什么是EJB?EJB和JAVA BEAN有何區別?
5、現有Mysql數據庫,寫Spring + Hibernate的配置文件
數據IP:127...1
數據庫:bdtc
用戶名:root
密碼:mysql
6、請簡要描述一下J2EE應用中的class loader的層次結構?
7、編寫一個截取字符串的函數,輸入為一個字符串和字節數,輸出為按字節截取的字符串。 但是要保證漢字不被截半個,如“我ABC”4,應該截為“我AB”,輸入“我ABC漢DEF”,應該輸出為“我ABC”而不是“我ABC+漢的半個”。
8、XML 的解析技術有哪些?區別是什么?你在項目中用到了xml技術的哪些方面?如何實現的?
9、寫一段代碼,實現銀行轉帳功能:
接口定義如下:
Public interface ITransfer{
/**
* 銀行內部轉帳,從轉出帳號中扣除轉帳金額,給轉入帳號增加轉帳金額,需要保證以上兩個操作
* 要么同時成功,要么同時失敗
* 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);
}
請編寫你的實現類,來實現上述接口
Account表
字段:accountId , 主鍵 varchar2(32), 用戶帳號
字段:amount , 金額 number(18,3)
1、SQL問答題
表結構:
1、 表名:g_cardapply
字段(字段名/類型/長度):
g_applyno varchar 8: //申請單號 (關鍵字)
g_applydate bigint 8: //申請日期
g_state varchar 2: //申請狀態
2、 表名:g_cardapplydetail
字段(字段名/類型/長度):
g_applyno varchar 8: //申請單號 (關鍵字)
g_name varchar 3: //申請人姓名
g_idcard varchar 18: //申請人身份證號
g_state varchar 2: //申請狀態
其中,兩個表的關聯字為申請單號
題目:
1、 查詢身份證號碼為61131981222382的申請日期
2、 查詢同一個身份證號碼有兩條以上記錄的身份證號碼及記錄個數
3、 將身份證號碼為61131981222382的記錄在兩個表中的申請狀態均改為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 ‘李%’
【軟件開發工程師JAVA筆試題】相關文章:
Java軟件開發工程師筆試題寶典10-15
java軟件開發工程師簡歷范文10-13
Java工程師筆試題11-15
軟件工程師:java軟件開發簡歷范文10-15
軟件開發工程師筆試題12-13
Java工程師面試題11-09
Java軟件開發工程師個人簡歷范文模板10-05
電子商務java軟件開發工程師簡歷范文10-14
Java開發工程師上機筆試題12-17