第一篇:JAVA程序員筆試題
深圳市九城恩科軟件技術(shù)有限公司
java程序員筆試題
JAVA 程序員筆試題
時間:30分鐘
試題一:
簡單描述一下什么是事務(wù)管理,事務(wù)管理中有哪些語句?
姓名:
試題二:
跳出當前循環(huán)的關(guān)鍵詞是什么?繼續(xù)本次循環(huán)的關(guān)鍵詞是什么?
試題三:
在JSP頁面源代碼中寫 “${flag}”是代表什么意思?
試題四:
請寫出最少五種設(shè)計模式的名稱。
試題五:
請寫出Eclipse 中下列功能的快捷鍵: 刪除當前行: 注釋當前行:
代碼助手完成一些代碼的插入: 打開類型: 打開資源:
試題六:
什么情況下Eclipse不編譯生成Class文件?
深圳市九城恩科軟件技術(shù)有限公司
java程序員筆試題
試題七:
public static void main(String[] args){
int i=3,j=16;do{ if(++i>=j--)continue;}while(i<9);System.out.println(“i=”+i+“;j=”+j);} 這段程序運行后輸出的結(jié)果是什么?
試題八:
public class One {
} public class Two extends One {
} protected void printA(){System.out.println(“two A”);} private void printB(){System.out.println(“two B”);} public static void main(String[] args){ Two t = new Two();t.printAB();} protected void printA(){System.out.println(“one A”);} private void printB(){System.out.println(“one B”);} protected void printAB(){printA();printB();} 這段程序運行后輸出的結(jié)果是什么?
試題九:
有一個表 “表A” 中包含 “姓名”,“成績”兩個字段,請寫一個SQL語句查詢出“成績”大于60分的,“姓名”有重復的人的名字
試題十:
請寫一個方法實現(xiàn):傳入的一個大于10位的字符串,把字符串的最后兩位移動到字符串的第4位后面。
第二篇:Java程序員筆試題
Java程序員筆試題
說明:該份題目要求在1小時內(nèi)答完
1、工廠方法模式和抽象工廠模式的區(qū)別
2、jsp/servlet 中 forward, include, reDirect 之間的區(qū)別
3、JSP中的兩種include包含指令的區(qū)別與用法
4、ArrayList和Vector的區(qū)別,HashMap和Hashtable及HashSet的區(qū)別?
5、請說明在實際應(yīng)用中,java.sql 包中的Statement和PreparedStatement有何區(qū)別?
6、如何遍歷一個集合(collection),并在屏幕上打印出集合中的每個元素public void printStr
(Collection cols){
}
7、寫一個方法,實現(xiàn)字符串的反轉(zhuǎn),例如:輸入abc,輸出cba
PublicString reverseStr(String str){
//代碼
}
8、輸入為整數(shù)數(shù)組,請寫出如下的排序算法,使得數(shù)組data里面存儲的數(shù)字隨數(shù)組腳標的增大而依
次增大,即越小的數(shù)字存儲的位置越靠前
Public void sort(int[]data){
}
9、用戶在JSP: input.jsp中輸入姓名和手機號碼,點”Done”按鈕來提交請求到一個/ 6
servlet:test.java。test.java將輸入的姓名和手機號碼存儲在文件store.txt里。
請寫出input.jsp, test.java的程序源碼,并在input.jsp和test.java中分別通過js和java代碼對輸入進行校驗,如果1)姓名項沒有填寫或者輸入的長度超過了20個字符2)手機號碼項沒有填寫,或者輸入了非數(shù)字的字符或者輸入的長度不是13位,則返回input.jsp,并給出相應(yīng)的錯誤提示。
10、有若干條有關(guān)城市的信息,每條包括如下屬性:ID(唯一遞增的序列),CITY(城市名稱),DESC(城市說明),要求設(shè)計一套數(shù)據(jù)結(jié)構(gòu)及算法使得1)所有登陸系統(tǒng)的用戶均能使用這些城市信息2)能夠根據(jù)城市ID 號或名稱獲得城市的其他信息3)如果從該數(shù)據(jù)結(jié)構(gòu)中找不到合適的城市信息,可以往該數(shù)據(jù)結(jié)構(gòu)中添加新的城市信息,但相同的城市(ID號或名稱有任意一個相同均認為是同一城市)在數(shù)據(jù)結(jié)構(gòu)中只能有一條記錄 4)如任一條城市信息,超過兩個小時沒有被使用(查詢)則需自動將其刪除
pubic class CityCache{
}
11、讀下面一段程序,寫出運行結(jié)果
----
pubicclassBaseClass{
static{
System.out.println(“aaaaa”);/ 6
}
BaseClass(){
System.out.println(“11111”);
}
}
publicclassDerivedClass
extendsBaseClass{
static{
System.out.println(“bbbbb”);
}
DerivedClass(){
System.out.println(“22222”);
}
}
publicclassStartRun {
public static void main(String[ ] args){
DerivedClasssdc 1 = newDerivedClass();
dc1 = newDerivedClass();
}
}
12、請寫出符合要求的sql 語句(假定數(shù)據(jù)庫為Oracle)。/ 6
現(xiàn)有數(shù)據(jù)表a,建表語句如下:
create table a(bm char(4),——編碼
mc varchar2(20)——名稱)
表中數(shù)據(jù)如下
bmmc
11111111
11121111
11131111
11141111
要求1:用一條sql語句實現(xiàn)對表a中數(shù)據(jù)的復制,即達到如下的結(jié)果(2)bmmc
11111111
11121111
11131111
11141111
11111111
11121111
11131111
11141111/ 6
要求2:請刪除表中重復的記錄(bm和mc都相同的記錄為重復記錄)
13、classStack {
LinkedListlist = new LinkedList()
public synchronized void push(Objectx){
synchronized(list){
list.addLast(x);
notify();
}
}
public synchronized Object pop(){
synchronized(list){
if(list.size()<=0)
wait();
return list.removeLast();
}
}/ 6
}
請問上面這個類中有什么錯誤?應(yīng)該怎么解決?14、15、請寫出MSSQL、ServerMysql和ORACE實現(xiàn)分頁算法的sql語句。UNIX和網(wǎng)絡(luò)基礎(chǔ),依次寫出完成下列的操作命令,最好有常用參數(shù)的簡單說明
1)如何顯示當前的IP配置信息
2)查看當前目錄
3)拷貝文件或目錄
4)移動文件或目錄
5)刪除文件或目錄
6)切換用戶
7)修改文件或目錄的權(quán)限
8)查看日志文件的最后1行
9)查看系統(tǒng)內(nèi)存、CPU的使用狀況
10)查看系統(tǒng)正在運行的和apache相關(guān)的進程/ 6
第三篇:JAVA程序員筆試題1
java程序員筆試題
JAVA 程序員筆試題
時間:30分鐘
試題一:
簡單描述一下什么是事務(wù)管理,事務(wù)管理中有哪些語句?
姓名:
試題二:
跳出當前循環(huán)的關(guān)鍵詞是什么?繼續(xù)本次循環(huán)的關(guān)鍵詞是什么?
試題三:
JAVA語言如何進行異常處理,關(guān)鍵字:throws,throw,try,catch,finally分別代表什么意義?在try塊中可以拋出異常嗎?
試題四:
請寫出最少三種設(shè)計模式的名稱。
試題五:
描述Cookie和Session的作用,區(qū)別和各自的應(yīng)用范圍,Session工作原理。
試題六:java中實現(xiàn)多態(tài)的機制是什么?
試題七:
public static void main(String[] args){
int i=3,j=16;do{if(++i>=j--)continue;}while(i<9);System.out.println(“i=”+i+“;j=”+j);}
這段程序運行后輸出的結(jié)果是什么?
試題八:
public class One {
}
public class Two extends One {
} protected void printA(){System.out.println(“two A”);} private void printB(){System.out.println(“two B”);} public static void main(String[] args){Two t = new Two();t.printAB();} protected void printA(){System.out.println(“one A”);} private void printB(){System.out.println(“one B”);} protected void printAB(){printA();printB();}
這段程序運行后輸出的結(jié)果是什么?
試題九:
有一個表 “表A” 中包含 “姓名”,“成績”兩個字段,請寫一個SQL語句查詢出“成績”大于60分的,“姓名”有重復的人的名字
試題十:
請寫一個方法實現(xiàn):傳入的一個大于10位的字符串,把字符串的最后兩位移動到字符串的第4位后面。
第四篇:java程序員筆試題
姓名:聯(lián)系方式:考試開始時間:
Java程序員筆試題
一、單項選擇題(共10題,每題2分,共20分)
1.下列說法哪一個是正確的。(B)
A.Java程序經(jīng)編譯后會產(chǎn)生machine code
B.Java程序經(jīng)編譯后會產(chǎn)生byte code
C.Java程序經(jīng)編譯后會產(chǎn)生DLL
D.以上都不正確
2.提供Java存取數(shù)據(jù)庫能力的包是。(A)
A.java.sqlB.java.awtC.java.langD.java.swing
3.執(zhí)行如下程序代碼后,C的值是。(C)
a=0;c=0;
do{
--c;
a=a-1;
}while(a>0);
A.0B.1C.-1D.死循環(huán)
4.下面的語句中正確的表達式為。(C)
A.byte b = 128;
B.boolean n = null;
C.double d = 0.9239d;
D.float f = 0.9239;
5.將一個十六進制值賦給一個long型變量的正確寫法為。(D
A.long number = 345L;
B.long number = 0345;
C.long number = 0345L;
D.long number = 0x345L;
6.以下程序代碼的輸出是。(B)
public class test(public static void main(String args[])(System.out.printIn(6 ^ 3);))
A.3B.5C.6D.11
7.以下程序代碼的輸出是。(E)
public class test(private static int j = 0;
private static boolean methodB(int k)(j += k;)
return true;)
public static void methodA(int i){
boolean b:
b = i < 10 | methodB(4);
b = i < 10 || methodB(8);)
public static void main(String args[] }(methodA(0);
system.out.printIn(j);))
A.0B.4C.8D.12E.不能編譯通過
8.以下程序代碼的輸出是。(A)
public class test {
public static void add3(Integer i)}
int val = i.intValue();
val += 3;
i = new Integer(val);
}
public static void main(String args [ ]){
Integer i = new Integer(0);
add3(i);
system.out.printIn(i.intValue());
})
A.編譯失敗B.編譯成功但在第三行會出現(xiàn)異常
9.以下程序代碼執(zhí)行后,哪個說法正確?(B)
int index = 1;
boolean[] test = new Boolean[3];
boolean foo= test [index];
A.有異常拋出。
B.無法編譯。
C.foo的值是0。
D.foo的值是null。
E.foo的值是true。
F.foo的值是false。
10.以下哪個類是swt包中的。(D)
A.MessageBoxB.MessageDialogC.JDialog
C.0D.3 D.DisplayMode
二、多項選擇題(共5題,每題4分,共20分)
1.在下面的選項中合法的標識符有。(ADEF)
A._ok
B.*point
C.this
D.$byte
E.const
F.ILikeJLCSS
2.下面的選項中哪些不是java的關(guān)鍵字。(AB D)
A.TRUE
B.sizeof
C.goto
D.const
E.super
F.void
3.下面的敘述中正確的有。(AC)
A. 環(huán)境變量可在編譯source code時指定。
B. 在編譯程序時,所能指定的環(huán)境變量不包括class path。
C. javac一次可同時編譯數(shù)個Java源文件。
D. javac.exe能指定編譯結(jié)果要置于哪個目錄(directory)。
4.下面的敘述中正確的有。(C)
A.equals()方法判定引用值是否指向同一對象。
B.= = 操作符判定兩個分立的對象的內(nèi)容和類型是否一致。
C.equals()方法只有在兩個對象的內(nèi)容一致時返回true。
D.類File重寫方法equals()在兩個分立的對象的內(nèi)容和類型一致時返回true。
5.下面有關(guān)變量及其作用域的陳述哪些是對的。(A C)
A.在方法里面定義的局部變量在方法退出的時候被撤銷。
B.局部變量也叫自動變量。
C.在方法外面定義的變量(譯注:即實例變量)在對象被構(gòu)造時創(chuàng)建。
D.在方法中定義的方法的參變量只要該對象被需要就一直存在。
三、簡答題(共7題,共40分)
1.請寫出一個輸出“Hello World!” 的程序。(3分)
答:public Class Hello World
{
Public static void main(String[]args)
{System.out.println(“HELLO WOTLD”);
}
}
2.char型變量中能不能存貯一個中文漢字? 為什么?(3分)
答:能存儲一個漢字;因為它能存儲四個字節(jié)而每個漢字只占兩個字節(jié)。
3.常見的兩種xml解析技術(shù)是什么? 區(qū)別是什么?(4分)
答:常見的兩種有:SAX和DOM。
區(qū)別:SAX 是一種事件驅(qū)動的xml解析方式。每次訪問一個xml文件中的某個節(jié)點的時候,sax就會搜索一遍xml文件,在找到相應(yīng)的節(jié)點后就會觸發(fā)一個事件來處理請求。只讀
DOM是一種基于樹狀的查找方式。DOM會將xml解析成一棵樹,存在內(nèi)存中。開發(fā)者可以通過查找樹的節(jié)點來取得文件的內(nèi)容或者修改內(nèi)容。可讀寫
4.MVC是什么,如何實現(xiàn)?(5分)
答:MVC是一個是一個設(shè)計模式,它強制性的使應(yīng)用程序的輸入,處理和輸出分開。
使用MVC應(yīng)用程序被分為三個核心部件:M----------MODO模型,V----------VIEW試圖,C---------Contral控制
實現(xiàn):首先有頁面(jsp)發(fā)送請求給控制器(servlet),然后由控制器接收用戶的請求,并決定應(yīng)該調(diào)用哪個模型(javabean)來進行處理,然后模型用業(yè)務(wù)邏輯來處理用戶的請求并返回數(shù)據(jù),最后控制器用相應(yīng)的視圖格式化模型返回的數(shù)據(jù),并通過表示層顯示給用戶。
5..J2EE是什么?(6分)
答:J2EE 是Sun公司提出的多層(multi-diered),分布式(distributed),基于組件(component-base)的企業(yè)級應(yīng)用模型(enterpriese application model).在這樣的一個應(yīng)用系統(tǒng)中,可按照功能劃分為不同的組件,這些組件又可在不同計算機上,并且處于相應(yīng)的層次(tier)中。所屬層次包括客戶層(clietn tier)組件,web層和組件,Business層和組件,企業(yè)信息系統(tǒng)(EIS)層。
6.jsp有哪些內(nèi)置對象?作用分別是什么?(9分)
答:1.request 用戶端請求,此請求會包含來自GET/POST請求的參數(shù);2.response 網(wǎng)頁傳回用戶端的回應(yīng);3.pageContext 網(wǎng)頁的屬性是在這里管理;4.session 與請求有關(guān)的會話期;5.application servlet 正在執(zhí)行的內(nèi)容;6.out 用來傳送回應(yīng)的輸出;7.config servlet的構(gòu)架部件;8.page JSP網(wǎng)頁本身;9.exception 針對錯誤網(wǎng)頁,未捕捉的例外
7.作用域public,private,protected,以及不寫時的區(qū)別 ?(10分)
答:作用域當前類同一package子孫類其他package
public√√√√
protected√√√×
friendly√√××
private√×××
不寫時默認為friendly
四、編碼及論述題(共2題,每題10分,共20分)
1.什么是Singleton,它的作用是什么,它有幾種形式?請用代碼寫出一個Singleton類。
答:Java Singleton 模式用來保證在運行的應(yīng)用程序中,一個Class只是實例化一次,也就是只有一個相應(yīng)的對象存在。
它有三種形式
public class Singleton
{
private static Singleton instance = null;
public static synchronized Singleton getInstance()
{
if(instance==null)
instance=new Singleton();
return instance;
}
}
2.在Struts + Spring + Hibernate的組合框架模式中,三者各自的特點都是什么?答:StrtusWEB層Spring是業(yè)務(wù)層Hiebenate是持久化層
第五篇:Java程序員的筆試題10道
Java程序員的筆試題10道
中軟國際不久前出了10道對于java程序員基本功時候扎實的考題,不妨你也來測測看吧。看下會幾道題目。
1、HashMap和Hashtable的區(qū)別。
都屬于Map接口的類,實現(xiàn)了將惟一鍵映射到特定的值上。HashMap 類沒有分類或者排序。它允許一個null 鍵和多個null 值。Hashtable 類似于HashMap,但是不允許null 鍵和null 值。它也比HashMap 慢,因為它是同步的,是線程的。
2、sleep()和wait()有什么區(qū)別?
sleep是線程類(Thread)的方法,導致此線程暫停執(zhí)行指定時間,給執(zhí)行機會給其他線程,但是監(jiān)控狀態(tài)依然保持,到時后會自動恢復。調(diào)用sleep不會釋放對象鎖。wait是Object類的方法,對此對象調(diào)用wait方法導致本線程放棄對象鎖,進入等待此對象的等待鎖定池,只有針對此對象發(fā)出notify方法(或notifyAll)后本線程才進入對象鎖定池準備獲得對象鎖進入運行狀態(tài)。
3、Collection 和Collections的區(qū)別。
Collections是個java.util下的類,它包含有各種有關(guān)集合操作的靜態(tài)方法。
Collection是個java.util下的接口,它是各種集合結(jié)構(gòu)的父接口。
4、什么時候用assert.assertion(斷言)在軟件開發(fā)中是一種常用的調(diào)試方式,很多開發(fā)語言中都支持這種機制。在實現(xiàn)中,assertion就是在程序中的一條語句,它對一個boolean表達式進行檢查,一個正確程序必須保證這個boolean表達式的值為true;如果該值為false,說明程序已經(jīng)處于不正確的狀態(tài)下,系統(tǒng)將給出警告或退出。一般來說,assertion用于保證程序最基本、關(guān)鍵的正確性。assertion檢查通常在開發(fā)和測試時開啟。為了提高性能,在軟件發(fā)布后,assertion檢查通常是關(guān)閉的。
5、&和&&的區(qū)別。
& 是兩個數(shù)相與,是位運算符,&&是布爾邏輯運算符,連接兩個條件表達式的,兩個條件表達式都為真時,整個才為真
6、談?wù)刦inal, finally, finalize的區(qū)別。
final:修飾符(關(guān)鍵字)如果一個類被聲明為final,意味著它不能再派生出新的子類,不能作為父類被繼承。因此一個類不能既被聲明為abstract的,又被聲明為final的。將變量或方法聲明為final,可以保證它們在使用中不被改變。被聲明為final的變量必須在聲明時給定初值,而在以后的引用中只能讀取,不可修改。被聲明為final的方法也同樣只能使用,不能重載。
finally:在異常處理時提供finally 塊來執(zhí)行任何清除操作。如果拋出一個異常,那么相匹配的catch 子句就會執(zhí)行,然后控制就會進入finally 塊(如果有的話)。
finalize:方法名。技術(shù)允許使用finalize()方法在垃圾收集器將對象從內(nèi)存中清除出去之前做必要的清理工作。這個方法是由垃圾收集器在確定這個對象沒有被引用時對這個對象調(diào)用的。它是在Object 類中定義的,因此所有的類都繼承了它。子類覆蓋finalize()方法以整理系統(tǒng)資源或者執(zhí)行其他清理工作。finalize()方法是在垃圾收集器刪除對象之前對這個對象調(diào)用的。
7、Anonymous Inner Class(匿名內(nèi)部類)是否可以extends(繼承)其它類,是否可以implements(實現(xiàn))interface(接口)?
匿名的內(nèi)部類是沒有名字的內(nèi)部類。不能繼承其它類,但一個內(nèi)部類可以作為一個接口,由另一個內(nèi)部類實現(xiàn)。
8、。Math.round(11.5)等於多少? Math.round(-11.5)等於多少?
Math.round(11.5)返回(long)12,Math.round(-11.5)返回(long)-11;因為返回最接近參數(shù)的long.通過加上1/2 將該結(jié)果舍入為整數(shù),取結(jié)果的基數(shù)并將其強制轉(zhuǎn)換為long 類型。換句話說,結(jié)果等于以下表達式的值:(long)Math.floor(a + 0.5d)
9、Static Nested Class 和Inner Class的不同,說得越多越好(面試題有的很籠統(tǒng))。
Static nested class(嵌套類)是將內(nèi)部類聲明為static.普通內(nèi)部類對象隱式地保存了一個引用,指向創(chuàng)建它的外圍類對象,不能有static數(shù)據(jù)和static字段。嵌套類意味著:1> 要創(chuàng)建嵌套類的對象,并不需要其外圍類的對象;2>不能從嵌套類的對象中訪問非靜態(tài)的外圍類的對象。
10、ArrayList和Vector的區(qū)別。
1>同步性:Vector是線程的,也就是說是同步的,而ArrayList是線程序不安全的,不是同步的2>數(shù)據(jù)增長:當需要增長時,Vector默認增長為原來一培,而ArrayList卻是原來的一半。
PS;本文檔由北大青鳥廣安門收集自互聯(lián)網(wǎng),僅作分享之用。