天天看點

網際網路公司社會招聘Java工程師面試題整理(1)

1、面向對象的特征有哪些方面?

2、通路修飾符public,private,protected,以及不寫(預設)時的差別?

3、String 是最基本的資料類型嗎?

4、float f=3.4;是否正确?

5、short s1 = 1; s1 = s1 + 1;有錯嗎?short s1 = 1; s1 += 1;有錯嗎?

6、Java有沒有goto?

7、int和Integer有什麼差別?

8、&和&&的差別?

9、解釋記憶體中的棧(stack)、堆(heap)和靜态區(static area)的用法。

10、Math.round(11.5) 等于多少?Math.round(-11.5)等于多少?

11、switch 是否能作用在byte 上,是否能作用在long 上,是否能作用在String上?

12、用最有效率的方法計算2乘以8?

13、數組有沒有length()方法?String有沒有length()方法?

14、在Java中,如何跳出目前的多重嵌套循環?

15、構造器(constructor)是否可被重寫(override)?

16、兩個對象值相同(x.equals(y) == true),但卻可有不同的hash code,這句話對不對?

17、是否可以繼承String類?

18、當一個對象被當作參數傳遞到一個方法後,此方法可改變這個對象的屬性,并可傳回變化後的結果,那麼這裡到底是值傳遞還是引用傳遞?

19、String和StringBuilder、StringBuffer的差別?

20、重載(Overload)和重寫(Override)的差別。重載的方法能否根據傳回類型進行區分?

21、描述一下JVM加載class檔案的原理機制?

22、char 型變量中能不能存貯一個中文漢字,為什麼?

23、抽象類(abstract class)和接口(interface)有什麼異同?

24、靜态嵌套類(Static Nested Class)和内部類(Inner Class)的不同?

25、Java 中會存在記憶體洩漏嗎,請簡單描述。

26、抽象的(abstract)方法是否可同時是靜态的(static),是否可同時是本地方法(native),是否可同時被synchronized修飾?

27、闡述靜态變量和執行個體變量的差別。

28、是否可以從一個靜态(static)方法内部發出對非靜态(non-static)方法的調用?

29、如何實作對象克隆?

31、String s = new String("xyz");建立了幾個字元串對象?

32、接口是否可繼承(extends)接口?抽象類是否可實作(implements)接口?抽象類是否可繼承具體類(concrete class)?

33、一個".java"源檔案中是否可以包含多個類(不是内部類)?有什麼限制?

34、Anonymous Inner Class(匿名内部類)是否可以繼承其它類?是否可以實作接口?

35、内部類可以引用它的包含類(外部類)的成員嗎?有沒有什麼限制?

36、Java 中的final關鍵字有哪些用法?

38、資料類型之間的轉換:

39、如何實作字元串的反轉及替換?

40、怎樣将GB2312編碼的字元串轉換為ISO-8859-1編碼的字元串?

41、日期和時間:

42、列印昨天的目前時刻。

43、比較一下Java和JavaSciprt。

44、什麼時候用斷言(assert)?

45、Error和Exception有什麼差別?

46、try{}裡有一個return語句,那麼緊跟在這個try後的finally{}裡的代碼會不會被執行,什麼時候被執行,在return前還是後?

47、Java語言如何進行異常處理,關鍵字:throws、throw、try、catch、finally分别如何使用?

48、運作時異常與受檢異常有何異同?

49、列出一些你常見的運作時異常?

50、闡述final、finally、finalize的差別。

51、類ExampleA繼承Exception,類ExampleB繼承ExampleA。

請問執行此段代碼的輸出是什麼?

52、List、Set、Map是否繼承自Collection接口?

53、闡述ArrayList、Vector、LinkedList的存儲性能和特性。

54、Collection和Collections的差別?

55、List、Map、Set三個接口存取元素時,各有什麼特點?

56、TreeMap和TreeSet在排序時如何比較元素?Collections工具類中的sort()方法如何比較元素?

57、Thread類的sleep()方法和對象的wait()方法都可以讓線程暫停執行,它們有什麼差別?

58、線程的sleep()方法和yield()方法有什麼差別?

59、當一個線程進入一個對象的synchronized方法A之後,其它線程是否可進入此對象的synchronized方法B?

60、請說出與線程同步以及線程排程相關的方法。

61、編寫多線程程式有幾種實作方式?

62、synchronized關鍵字的用法?

63、舉例說明同步和異步。

64、啟動一個線程是調用run()還是start()方法?

65、什麼是線程池(thread pool)?

66、線程的基本狀态以及狀态之間的關系?

67、簡述synchronized 和java.util.concurrent.locks.Lock的異同?

68、Java中如何實作序列化,有什麼意義?

69、Java中有幾種類型的流?

70、寫一個方法,輸入一個檔案名和一個字元串,統計這個字元串在這個檔案中出現的次數。

71、如何用Java代碼列出一個目錄下所有的檔案?

72、用Java的套接字程式設計實作一個多線程的回顯(echo)伺服器。

73、XML文檔定義有幾種形式?它們之間有何本質差別?解析XML文檔有哪幾種方式?

74、你在項目中哪些地方用到了XML?

75、闡述JDBC操作資料庫的步驟。

76、Statement和PreparedStatement有什麼差別?哪個性能更好?

77、使用JDBC操作資料庫時,如何提升讀取資料的性能?如何提升更新資料的性能?

78、在進行資料庫程式設計時,連接配接池有什麼作用?

79、什麼是DAO模式?

80、事務的ACID是指什麼?

81、JDBC中如何進行事務處理?

82、JDBC能否處理Blob和Clob?

83、簡述正規表達式及其用途。

84、Java中是如何支援正規表達式操作的?

85、獲得一個類的類對象有哪些方式?

86、如何通過反射建立對象?

87、如何通過反射擷取和設定對象私有字段的值?

88、如何通過反射調用對象的方法?

89、簡述一下面向對象的"六原則一法則"。

90、簡述一下你了解的設計模式。

91、用Java寫一個單例類。

92、什麼是UML?

93、UML中有哪些常用的圖?

94、用Java寫一個冒泡排序。

95、用Java寫一個折半查找。 作者:路人甲

連結:https://zhuanlan.zhihu.com/p/21551758

【關于我們】

 【關于我們】

才淇(微信公衆号:caiqicehua),專注于國内各大網際網路公司社會招聘内推。每天更新最新網際網路名企(包括但不限于今日頭條、網易遊戲、BAT、網易網際網路、小米、京東、樂視、攜程等名企)内推資訊,有技術崗、有産品崗、有營運崗、有設計崗、有互動崗、有銷售崗,更有其他N多相關崗位!更多内推資訊請掃描以下二維碼關注查閱。

網際網路公司社會招聘Java工程師面試題整理(1)