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