- 相關推薦
java的筆試題2
1. 是否可以繼承String類?
String類是final類,不可以繼承 final是java中的一個關鍵字,可以用來修飾變量、方法和類。用關鍵詞final修飾的域成為最終域。用關鍵詞final修飾的變量一旦賦值,就不能改變,也稱為修飾的標識為常量。如果一個類的域被關鍵字final所修飾,它的取值在程序的整個執行過程中將不會改變。 2.HashMap和Hashtable的區別?
1.hashMap去掉了HashTable 的contains方法,但是加上了containsValue()和containsKey()方法。
2.hashTable同步的,而HashMap是非同步的,效率上逼hashTable要高。
這就意味著,雖然你可以不用采取任何特殊的行為就可以在一個多線程的應用程序中用一個Hashtable,但你必須同樣地為一個HashMap提供外同步。
3.hashMap允許空鍵值,而hashTable不允許。
3 .abstract class和interface有什么區別?
class 是普通類
abstract 是抽象類 包含純虛函數(C++里)的類
interface 是接口 讓普通類可以繼承他派生出有一定相同點的不同類
1.相同點
A. 兩者都是抽象類,都不能實例化。
B. interface實現類及abstrct class的子類都必須要實現已經聲明的抽象方法。
2. 不同點
A. interface需要實現,要用implements,而abstract class需要繼承,要用extends。
B. 一個類可以實現多個interface,但一個類只能繼承一個abstract class。
C. interface強調特定功能的實現,而abstract class強調所屬關系。
D. 盡管interface實現類及abstrct class的子類都必須要實現相應的抽象方法,但實現的形式不同。interface中的每一個方法都是抽象方法,都只是聲明的 (declaration, 沒有方法體),實現類必須要實現。而abstract class的子類可以有選擇地實現。
4. swtich是否能作用在byte上,是否能作用在long上,是否能作用在String上? 在switch(expr1)中,expr1只能是一個整數表達式或者枚舉常量(更大字體),整數表達式可以是int基本類型或Integer包裝類型,由于,byte,short,char都可以隱含轉換為int,所以,這些類型以及這些類型的包裝類型也是可以的。顯然,long和String類型都不符合switch的語法規定,并且不能被隱式轉換成int類型,所以,它們不能作用于swtich語句中。
5. 編程題: 寫一個Singleton出來。
Java:
public class Singleton {
private static Singleton instance = null; public static synchronized Singleton getInstance() {
//這個方法比上面有所改進,不用每次都進行生成對象,只是第一次
//使用時生成實例,提高了效率!
if (instance==null)
instance=new Singleton();
return instance;
}
} 6. JAVA SERVLET API中forward() 與redirect()的區別?
forward是服務器請求資源,服務器直接訪問目標地址的URL,
前者僅是容器中控制權的轉向,在客戶端瀏覽器地址欄中不會顯示出轉向后的地址,他是不會改變Request的值
forward 是轉發,redirect是跳轉。相同點都是為了兩個組件之間的相互調用。forward的運行原理是服務器端內部的調用,所以它不需要通過瀏覽器來請求,所url地址不會改變,request的作用范圍也沒有中斷過,它的作用域仍然有效。而redirect是重定向,是服務器發送消息告訴瀏覽器,讓瀏覽器重新向新的地址請求,所以,url地址是會改變的,由于重新請求了,因而request也中斷了,重新請求了,它的作用范圍也失效了,放在 request里面的信息也隨之而清空了。
7. String 和StringBuffer的區別?
String:字符串常量
StringBuffer:字符創變量
StringBuilder:字符創變量
StringBuilder:線程非安全的
StringBuffer:線程安全的
String:
是對象不是原始類型.
為不可變對象,一旦被創建,就不能修改它的值.
對于已經存在的String對象的修改都是重新創建一個新的對象,然后把新的值保存進去. String 是final類,即不能被繼承.
StringBuffer:
是一個可變對象,當對他進行修改的時候不會像String那樣重新建立對象
它只能通過構造函數來建立,
.String 對一串字符進行操作。不可變類。
3.StringBuffer 也是對一串字符進行操作,但是可變類。
8. 面向對象的三個基本特征
.
9.一條語句查詢每個部門共有多少人
前提:a 部門表 b 員工表
a表字段(
id --部門編號
departmentName-部門名稱
)
b表字段(
id--部門編號
employee- 員工名稱
)
10. 有3張表,Student表、SC表和Course表
Student表:學號(Sno)、姓名(Sname)、性別(Ssex)、年齡(Sage)和系名(Sdept)
Course表:課程號(Cno)、課程名(Cname)和學分(Ccredit);
SC表:學號(Sno)、課程號(Cno)和成績(Grade)
請使用SQL語句查詢學生姓名及其課程總學分
sum
【java的筆試題2】相關文章:
迅雷JAVA廣州站二筆筆試題目分享11-21
java筆試題及答案08-20
JAVA面試筆試題11-15
經典java筆試題及答案分享02-25
華為Java筆試題一11-21
java英文面試筆試題11-22
java面試筆試題分享11-18
企業Java面試筆試題范文09-27
群碩筆試題Java和C++、C#11-21