JAVA基礎面試題(經典)

第一階段題庫

基礎知識部分:

1. JDK是什么?JRE是什么?

a) 答:JDK:java開發工具包。JRE:java運行時環境。

2. 什么是java的平臺無關性?

a) 答:Java源文件被編譯成字節碼的形式,無論在什么系統環境下,只要有java虛

擬機就能運行這個字節碼文件。也就是一處編寫,處處運行。這就是java的跨平臺性。

3. 在一臺電腦上配置java環境,path起什么作用?如何配置?

a) 答:path的作用是在DOS環境下,能在任意位置使用JDK目錄中bin文件夾中的

可執行程序,來編譯執行java程序。

b) 在環境變量中找到path變量,把bin文件夾的絕對路徑加上即可。

4. 什么樣的標識符是合法的?

a) 由字母、數字、_和$組成,長度不限。其中字母可以是大寫或小寫的英文字母,數

字為0到9。

b) 標識符的第一個字符不能是數字。

c) 標識符區分大小寫。

d) 標識符不能包含空格。

5. Java有幾種基本數據類型?

a) byte,short,int,long,char,boolean,float,double

6. 什么是隱式類型轉換?什么是顯示類型轉換?

a) 當將占位數少的類型賦值給占位數多的類型時,Java自動使用隱式類型轉換。 b) 當把在級別高的變量的值賦給級別底變量時,必須使用顯示類型轉換運算。

7. &&和&區別,||和|區別?

a) &&和||是短路與,短路或,當左邊的表達式能判斷當前結果,則不判斷右邊的表

達式。

b) 而& 和|則將兩邊的表達式都運算完畢后,再算結果。

8. break,continue區別?

a) break結束最近的一個循環,continue結束當次循環,進入下次循環。

9. 類的命名規則是什么?

a) 如果類名使用拉丁字母,那么名字的首寫字母使用大寫字母。

b) 類名最好見名得意,當類名由幾個單詞復合而成時,每個單詞的首寫字母使用大寫。

10. 類體的內容由兩部分構成,哪兩部分?

a) 一部分是變量的定義,用來刻畫屬性。

b) 另一部分是方法的定義,用來刻畫功能。

11. 解釋什么是類的成員變量,局部變量,實例成員變量,類成員變量?

a) 變量定義部分所定義的變量被稱為類的成員變量。

b) 在方法體中定義的變量和方法的參數被稱為局部變量。

c) 成員變量又分為實例成員變量和類成員變量(static修飾)。

12. 簡述this關鍵字用法。

a) this關鍵字使用在實例方法中,代表調用該方法的當前對象。

13. 如何確定方法的返回類型?

_____________________________________________________________________

a) 方法返回的值的類型就是方法的返回類型,如果無返回值,則返回類型為void。

14. 返回值為void的方法,可否有return?

a) 可以。但return后沒有任何值。

15. 解釋什么是類方法,什么是實例方法?

a) static修飾的方法是類方法,無static修飾的方法是實例方法。

16. 簡述方法和變量的命名規則?

a) 首寫字母使用小寫,如果由多個單詞組成,從第2個單詞開始首字母使用大寫。

17. 什么是方法重載?

a) 方法重載是指一個類中可以有多個方法具有相同的名字,但這些方法的參數必須不

同,即或者是參數的個數不同,或者是參數的類型不同。

18. 什么是構造方法?

a) 構造方法是一種特殊方法,它的名字必須與它所在的類的名字完全相同,并且不返

回任何數據類型。

19. 如何創建一個對象?

a) 使用new 運算符和類的構造方法為對象分配內存,如果類中沒有構造方法,系統

會調用默認的構造方法。

20. 系統什么情況下會為類提供構造方法,提供什么樣的構造方法?

a) 如果類中沒有構造方法,系統會提供一個默認的構造方法,默認的構造方法是無參

的。

21. 對象如何調用自己的成員變量和方法?

a) 使用運算符” . ”來調用自己的成員變量和方法。

22. 為什么可以直接用類名來訪問類成員變量和類方法?

a) 因為當類被加載到虛擬機的時候,類成員變量就被分配內存,類方法被分配入口地

址,所以不用創建對象,可以直接通過類名調用。

23. 類變量有什么特點?

a) 一個類的所有對象共享同一個類變量。

24. 類方法有什么特點?

a) 類方法只能調用類變量和類方法。(同一類中)

25. package關鍵字有什么作用,使用中注意什么問題?

a) package指定一個類所在的包,該語句為源代碼第一行。

26. import關鍵字有什么作用?

a) 引入程序中所用到的類。

27. 類有幾種訪問權限?變量和方法有幾種訪問權限?分別是什么?

a) 類有兩種訪問權限:public,友好的。

b) 方法和變量的訪問權限:public,protected,友好的,private。

28. 簡述java的訪問權限。

a) public:公有的,任何類都可以訪問。

b) protected:受保護的,同一個包的類可以訪問。不同包的子類可以訪問。 c) 友好的:同一個包的類可以訪問。

d) private:私有的,在同一個類中才能訪問。

29. 子類能繼承父類的哪些變量和方法?

a) 如果子類和父類在同一個包中,那么,子類自然地繼承了其父類中不是private 的

成員變量作為自己的成員變量,并且也自然地繼承了父類中不是private 的方法作為自己的方法。

_____________________________________________________________________

b) 如果子類和父類不在同一個包中,那么,子類繼承了父類的protected,public 成

員變量做為子類的成員變量,并且繼承了父類的protected,public 方法為子類的方法。

30. 子類重寫父類的方法,可否降低訪問權限?

a) 不可以降低。

31. final關鍵字可以用來修飾什么?分別起什么作用?

a) final可以修飾類,這樣的類不能被繼承。

b) final可以修飾方法,這樣的方法不能被重寫。

c) final可以修飾變量,這樣的變量的值不能被修改,是常量。

32. 簡述super關鍵字作用?

a) 使用super調用父類的構造方法。

b) 使用super操作被隱藏的成員變量和方法。

33. 簡述什么是對象上轉型?

a) 假設,A 類是B 類的父類,當我們用子類創建一個對象,并把這個對象的引用放

到父類的對象中時,我們稱這個父類對象是子類對象的上轉型對象。

34. 上轉型對象可以操作什么?不可以操作什么?

a) 上轉對象不能操作子類新增的成員變量,失掉了這部分屬性,不能使用子類新增的

方法,失掉了一些功能 。

b) 上轉型對象可以操作子類繼承或重寫的成員變量,也可以使用子類繼承的或重寫的

方法。

35. 什么是抽象類?什么是抽象方法?有什么特點?

a) 用關鍵字abstract修飾類稱為抽象類,abstract類不能用new運算創建對象,必須

產生其子類,由子類創建對象。

b) 用關鍵字abstract修飾方法稱為抽象方法,abstract方法,只允許聲明,而不允許

實現。

36. 一個類聲明實現一個接口,那么這個類需要做什么工作?

a) 實現接口里所有的方法,并且這些方法的訪問權限必須是public。

37. 簡述什么是數組?

a) 數組是相同類型的數據按順序組成的一種復合數據類型。通過數組名加數組下標,

來使用數組中的數據。下標從 0 開始排序。

38. 創建數組是否需要指定數組長度,如何求數組長度?

a) 必須指定數組長度,數組調用 .length來獲取數組長度。

39. char數組和byte數組如何轉化成字符串?如何求字符串長度?

a) 利用String類本身的構造方法,String (char a[]),String (byte a[]),””.length()。

以下方法均為字符串中方法

40. equals equalsIgnoreCase startsWith endsWith

a) 字符串比較 。

b) 忽略大小寫比較。

c) 判斷是否以指定字符串開頭、結尾。

41. regionMatches

a) 判斷一個字符串的子串是否和另一個字符串的子串匹配。

42. compareTo compareToIgnoreCase indexOf

a) 按字典順序比較字符串。

b) 忽略大小寫的按字典順序比較字符串。

c) 字符串檢索。

43. substring replace trim()

a) 字符串截取

b) 字符串替換

c) 去掉字符串前后空格。

44. 字符串如何轉化為int型,double型?

a) Integer.parseInt(“1”);

b) Double.parseDouble(“25。45”);

45. 簡述StringTokenizer作用?

a) 按照指定的分隔符,將字符串解析成若干語言符號。

46. 如何判斷一個字符是不是數字,是不是大寫?

a) Character.isDigit(‘a’)

b) Character.isUpperCase(‘U’)

47. 已知一個java.util.Date對象,如何格式化成如下格式 YYYY-MM-dd hh:mm:ss

a) SimpleDateFormat formate = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");

formate.format(new Date()));

48. 如何生成一個0-100的隨即整數?

a) (int)(Math.random()*100)

49. 簡述java異常處理的機制?

a) 當所調用的方法出現異常時,調用者可以捕獲異常使之得到處理;也可以回避異常。

50. 簡述如下關鍵字用途try、catch、throw、throws、finally

a) try:保護代碼,如果try中某行代碼出現異常,則try中代碼不再繼續執行。 b) catch:捕獲異常,當try中出現異常,則catch負責捕獲異常,并處理。

c) throw:拋出異常。

d) throws:聲明異常。

e) finally:無論try中是否出現異常,finally一定執行。

51. LinkedList和ArrayList區別?

a) LinkedList底層通過鏈式存儲結構實現。

b) ArrayList底層通過數組實現。

52. 什么是I/O流,有什么作用?

a) 指數據輸入輸出的流, I/O 流提供一條通道程序,可以使用這條通道把源中的字

節序列送給目的地。

53. 如何查看一個文件的大小,絕對路徑,是否可讀?

a) File file = new File(“e://a.txt”);

b) file.length();

c) file.getAbsolutePath();

d) file.canRead();

54. 已知如下代碼

File f = new File("myfile.dat");

FileInputStream istream = new FileInputStream(f); 如何從流中讀取數據。

a) byte[] buff = new byte[100];

b) istream.read(buff);

55. 實現多線程的兩種方法?

a) 從Java.lang.Thread類派生一個新的線程類,重寫它的run()方法。

b) 實現Runnable接口,重寫Runable接口中的run()方法。

56. 簡述一個線程的生命周期?

a) 新建---運行---中斷---死亡

57. 如何讓一個準備就緒的線程運行?

a) 調用線程的start方法讓一個處于準備就緒的狀態的線程運行。

58. 如何讓一個線程休眠1000毫秒?

a) 調用線程的sleep方法,參數為1000。

59. 如何使線程同步?

a) 使用同步方法

synchronized void methodA() { }

b) 使用同步塊

synchronized(object) {

//要同步的語句

}

60. 什么是GC?為什么有GC?

a) GC是垃圾收集器。Java 程序員不用擔心內存管理,因為垃圾收集器會自動進行管

理。

61. 構造方法能否被重寫?為什么?

a) 不能,因為構造方法不能被繼承,所以不能重寫。

62. 是否可以繼承String類,為什么?

a) 因為String類是final類,final修飾的類不能被繼承。

63. java關鍵字區分大小寫嗎?

a) java關鍵字一律小寫。所以無所謂區分大小寫,大寫的不是關鍵字。

64. java采用什么字符集?該字符集有多少字符

a) Java 使用 unicode 字符集,所以常量共有 65535 個

65. 列舉算術運算符?

a) +,-,*,/,%

66. 算術混合運算結果精度如何確定?

a) Java按照運算符兩邊的操作元的最高精度保留結果的精度。

67. &是位運算符,與運算的規則是什么?

a) 全1則1,否則為0

68. | 是位運算符,或運算的規則是什么?

a) 全0則0,否則是1

69. ^是位運算符,異或運算的規則是什么?

a) 相同0,不同1

70. ~是位運算符,非運算的規則是什么?

a) 遇1則0,遇0則1

71. if語句后邊有個括號,該括號里表達式為什么類型?

a) boolean類型

72. switch語句后括號里的表達式是什么類型?case后類型如何確定?

a) char,int,byte,short,枚舉類型。

b) case后面是一個常量,該常量類型由switch后括號內表達式來確定。

73. switch語句后,default關鍵字起什么作用?break起什么作用?

a) default:當用戶指定的表達式與任何case都不匹配的時候,執行default后的語句。 b) break:退出當前case。

74. for循環后括號里三個表達式分別起什么作用?

a) 1:循環初始化的時候執行,只執行一次。

b) 2:循環成立的條件。

c) 3:循環每次執行都會調用該表達式,一般做變量自增。

75. while 和do。。while區別?

a) while先判斷條件,再執行。

b) do……while先執行,再判斷條件

c) do……while至少執行一次。

76. 什么是編譯執行的語言?什么是解釋執行的語言?

a) 編譯方式:Compilation:針對當前的機器處理器芯片,將源程序全部翻譯成機器指令,

稱做目標程序,再將目標程序交給計算機執行.

b) 解釋方式:Interpretation:這種方式不產生整個的目標程序,而是根據當前的機器處

理器芯片,邊翻譯邊執行,翻譯一句執行一句.

77. 簡述一個java程序執行的過程?

a) 首先編寫java源文件(擴展名為.java的文本文檔)。

b) 用javac命令把源文件編譯成字節碼文件(.class文件)

c) 用java命令執行字節碼文件。

78. 成員變量的作用范圍?局部變量的作用范圍?

a) 成員變量在整個類內都有效

b) 局部變量只在定義它的類內有效。

79. 構造方法有什么作用?

a) 在創建對象的時候,java虛擬機會調用類的構造方法來創建對象。一般對象的初始

化工作可以放在構造方法里。

80. java三大特性?

a) 封裝,繼承,多態。

數據庫部分

81. 簡述什么是關系型數據庫?

a) 所謂關系型數據庫,是指采用了關系模型來組織數據的數據庫。關系模型指的就是

二維表格模型,而一個關系型數據庫就是由二維表及其之間的聯系組成的一個數據組織。

b) 關系型數據庫是由許多數據表(Table)所組成,表又是由許多記錄(Row 或Record)

所組成,而紀錄又是由許多的字段(Column 或Filed)所組成。

82. 什么是主鍵?

a) 設置一個表中的某個字段為主鍵,這個字段能夠唯一的確定該表中某條記錄,這樣

的字段我們稱為主鍵。

83. 什么是外鍵?

a) 外部鍵約束用于強制參照完整性,提供單個字段或者多個字段的參照完整性。

84. 主外鍵關聯的作用?

a) 保證數據完整性。

b) 消除冗余數據。

85. SQL語句中文含義是?

a) Structured Query Language,結構化查詢語言。

86. 什么是數據庫?

a) 數據庫是長期存儲在計算機內的、有組織的、可共享的數據集合。

87. 什么數據庫管理系統?

a) DBMS就是實現把用戶意義下的抽象的邏輯數據轉換成計算機中的具體的物理數

據的處理軟件。

JDBC部分

88. JDBC含義?

a) JDBC(Java DataBase Connectivity) java數據庫連接,是java連接數據庫的AIP。

89. JDBC連接數據庫步驟?

a) 加載驅動

Class.forName("com.microsoft.sqlserver.jdbc.SQLServerDriver");

b) 建立連接

Connection conn = DriverManager.getConnection(dbURL,username,password);

c) 創建語句對象

Statement stmt = conn.createStatement()

90. 如何使用sql語句操作數據庫?

a) 得到語句對象之后,使用語句對象調用executeUpdate(sql)方法和executeQuery(sql)

方法分別執行更新語句和查詢語句。

91. executeUpdate(sql)方法的返回值表示什么含義?

a) 表示該更新方法影響了幾行記錄。

92. executeQuery(sql)方法的返回值如何使用?

a) 該方法的返回值為一個結果集,即ResultSet類型的對象。

b) ResultSet類型的對象有一個游標,指向當前操作的行。該游標默認指向第一行記錄

之前,如果我們想操作結果集,需要先將游標下移,我們調用ResultSet接口的next()方法將游標下移,如果結果集里有數據,則游標下移,指向第一行,如果結果集里沒有記錄,則下移失敗。當游標指向具體的某一行時,我們就可以從結果集里邊獲取值了。獲取的值為當前游標指向行的值。

93. 如何獲取游標所指的行的數據?

a) 當游標指向某一行時,我們可以使用ResultSet接口的getString(列名)方法來獲取某

一列的值,列名作為方法的參數。

94. 創建語句對象時,createStatement(參數1,參數2),兩個參數分別表示什么含義?

a) 第一個參數指定該語句對象生成的結果集是否可滾動以及是否敏感,

b) 第二個參數指定該語句對象生成的結果集是否可以更新數據庫。

最后編輯于
?著作權歸作者所有,轉載或內容合作請聯系作者
平臺聲明:文章內容(如有圖片或視頻亦包括在內)由作者上傳并發布,文章內容僅代表作者本人觀點,簡書系信息發布平臺,僅提供信息存儲服務。
  • 序言:七十年代末,一起剝皮案震驚了整個濱河市,隨后出現的幾起案子,更是在濱河造成了極大的恐慌,老刑警劉巖,帶你破解...
    沈念sama閱讀 229,763評論 6 539
  • 序言:濱河連續發生了三起死亡事件,死亡現場離奇詭異,居然都是意外死亡,警方通過查閱死者的電腦和手機,發現死者居然都...
    沈念sama閱讀 99,238評論 3 428
  • 文/潘曉璐 我一進店門,熙熙樓的掌柜王于貴愁眉苦臉地迎上來,“玉大人,你說我怎么就攤上這事。” “怎么了?”我有些...
    開封第一講書人閱讀 177,823評論 0 383
  • 文/不壞的土叔 我叫張陵,是天一觀的道長。 經常有香客問我,道長,這世上最難降的妖魔是什么? 我笑而不...
    開封第一講書人閱讀 63,604評論 1 317
  • 正文 為了忘掉前任,我火速辦了婚禮,結果婚禮上,老公的妹妹穿的比我還像新娘。我一直安慰自己,他們只是感情好,可當我...
    茶點故事閱讀 72,339評論 6 410
  • 文/花漫 我一把揭開白布。 她就那樣靜靜地躺著,像睡著了一般。 火紅的嫁衣襯著肌膚如雪。 梳的紋絲不亂的頭發上,一...
    開封第一講書人閱讀 55,713評論 1 328
  • 那天,我揣著相機與錄音,去河邊找鬼。 笑死,一個胖子當著我的面吹牛,可吹牛的內容都是我干的。 我是一名探鬼主播,決...
    沈念sama閱讀 43,712評論 3 445
  • 文/蒼蘭香墨 我猛地睜開眼,長吁一口氣:“原來是場噩夢啊……” “哼!你這毒婦竟也來了?” 一聲冷哼從身側響起,我...
    開封第一講書人閱讀 42,893評論 0 289
  • 序言:老撾萬榮一對情侶失蹤,失蹤者是張志新(化名)和其女友劉穎,沒想到半個月后,有當地人在樹林里發現了一具尸體,經...
    沈念sama閱讀 49,448評論 1 335
  • 正文 獨居荒郊野嶺守林人離奇死亡,尸身上長有42處帶血的膿包…… 初始之章·張勛 以下內容為張勛視角 年9月15日...
    茶點故事閱讀 41,201評論 3 357
  • 正文 我和宋清朗相戀三年,在試婚紗的時候發現自己被綠了。 大學時的朋友給我發了我未婚夫和他白月光在一起吃飯的照片。...
    茶點故事閱讀 43,397評論 1 372
  • 序言:一個原本活蹦亂跳的男人離奇死亡,死狀恐怖,靈堂內的尸體忽然破棺而出,到底是詐尸還是另有隱情,我是刑警寧澤,帶...
    沈念sama閱讀 38,944評論 5 363
  • 正文 年R本政府宣布,位于F島的核電站,受9級特大地震影響,放射性物質發生泄漏。R本人自食惡果不足惜,卻給世界環境...
    茶點故事閱讀 44,631評論 3 348
  • 文/蒙蒙 一、第九天 我趴在偏房一處隱蔽的房頂上張望。 院中可真熱鬧,春花似錦、人聲如沸。這莊子的主人今日做“春日...
    開封第一講書人閱讀 35,033評論 0 28
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽。三九已至,卻和暖如春,著一層夾襖步出監牢的瞬間,已是汗流浹背。 一陣腳步聲響...
    開封第一講書人閱讀 36,321評論 1 293
  • 我被黑心中介騙來泰國打工, 沒想到剛下飛機就差點兒被人妖公主榨干…… 1. 我叫王不留,地道東北人。 一個月前我還...
    沈念sama閱讀 52,128評論 3 398
  • 正文 我出身青樓,卻偏偏與公主長得像,于是被迫代替她去往敵國和親。 傳聞我的和親對象是個殘疾皇子,可洞房花燭夜當晚...
    茶點故事閱讀 48,347評論 2 377

推薦閱讀更多精彩內容

  • 1. Java基礎部分 基礎部分的順序:基本語法,類相關的語法,內部類的語法,繼承相關的語法,異常的語法,線程的語...
    子非魚_t_閱讀 31,733評論 18 399
  • 第一階段題庫 基礎知識部分: 1. JDK是什么?JRE是什么? a) 答:JDK:java開發工具包。JRE:j...
    紫豆包閱讀 1,850評論 1 27
  • (一)Java部分 1、列舉出JAVA中6個比較常用的包【天威誠信面試題】 【參考答案】 java.lang;ja...
    獨云閱讀 7,131評論 0 62
  • 首先,給出一句話:#######java盡力保證:所有變量在使用前都能得到恰當的初始化。 成員初始化:1、對于方法...
    zclzhangcl閱讀 250評論 0 0
  • 我來了, 可你??不見了。 我在坡月山野尋覓, 我在盤陽河邊尋覓。 你呀你, 曾經是我愛戀的思念, 那一年那一月的那...
    梁汝閱讀 213評論 0 0