學java面試會提什麼問題呢?2019年java面試經典100問

2020-12-14 月月姐的it見解

2019年馬上就要結束了,領完年終獎是不是該跳槽了呢,提前準備起來吧,小夥伴。今天就跟著北大青鳥科海校區月月小姐姐帶大家來看看2019年java面試的100個金典面試問題。

文章目錄

一、java基礎

二、資料庫

三、SSM框架

四、redis

五、消息隊列

六、spring boot

七、spring cloud

八、其他

一、java基礎

1、面向對象的特徵有哪些方面? 【基礎】

2、int 和Integer 有什麼區別? 【基礎】

3、Math.round(11.5) 等於多少? Math.round(-11.5)等於多少? 【基礎】

4、編程題: 用最有效率的方法算出2 乘以8 等於幾? 【基礎】

5、數組有沒有 length()方法?String 有沒有 length()方法?【基礎】

6、構造器(constructor)是否可被重寫(override)?【基礎】

7、是否可以繼承String 類? 【基礎】

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

9、String 和StringBuffer 的區別?【基礎】

10、String, StringBuffer StringBuilder 的區別。【基礎】

11、重載(Overload)和重寫(Override)的區別。重載的方法能否根據返回類型進行區分?【基礎】

12、描述一下 JVM 加載 class 文件的原理機制?【中等】

13、interface可以有方法的實現嗎?【中等】

14、是否可以從一個static 方法內部發出對非static 方法的調用?【基礎】

15、GC 是什麼? 為什麼要有GC? 【基礎】

16、垃圾回收器的基本原理是什麼?垃圾回收器可以馬上回收內存嗎?有什麼辦法主動通知虛擬機進行垃圾回收?【基礎】

17、一個「.java」源文件中是否可以包含多個類(不是內部類)?有什麼限制?【基礎】

18、Java 中的 final 關鍵字有哪些用法?【基礎】

19、編碼轉換:怎樣將GB2312 編碼的字符串轉換為ISO-8859-1 編碼的字符串?【基礎】

20、error 和exception 有什麼區別? 【基礎】

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

22、List,Set,Map 是否繼承自Collection 接口?【基礎】

23、說出ArrayList,Vector, LinkedList 的存儲性能和特性?【基礎】

24、HashMap 和Hashtable 的區別? 【基礎】

25、Arraylist 與Vector 區別?【基礎】

26、List、Map、Set 三個接口,存取元素時,各有什麼特點?【基礎】

27、sleep() 和wait() 有什麼區別? 【基礎】

28、當一個線程進入一個對象的一個synchronized 方法後,其它線程是否可進入此對象的其它方法? 【基礎】

29、多線程有幾種實現方法,都是什麼?同步有幾種實現方法,都是什麼? 【基礎】

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

31、簡述synchronized 和java.util.concurrent.locks.Lock 的異同?【中等】

32、編寫多線程程序有幾種實現方式?【中等】

33、Java 中如何實現序列化,有什麼意義?【中等】

二、資料庫

34、闡述 JDBC 操作資料庫的步驟。【基礎】

35、使用 JDBC 操作資料庫時,如何提升讀取數據的性能?如何提升更新數據的性能?【中等】

36、在進行資料庫編程時,連接池有什麼作用?【基礎】

37、事務的ACID是指什麼?【基礎】

38、談談髒讀、幻讀和不可重複讀?【中等】

39、JDBC中如何進行事務處理?【中等】

40、獲得一個類的類對象有哪些方式?【基礎】

41、JSP 有哪些內置對象?作用分別是什麼?【基礎】

42、get 和 post 請求的區別?【基礎】

43、講解 JSP 中的四種作用域。【基礎】

三、SSM框架

44、MyBatis 中使用#和$書寫佔位符有什麼區別?【中等】

45、解釋一下 MyBatis 中命名空間(namespace)的作用。【中等】

46、什麼是 IoC 和 DI?DI 是如何實現的?【中等】

47、解釋一下什麼叫 AOP(面向切面編程)?【基礎】

48、你是如何理解"橫切關注"這個概念的?【中等】

49、你如何理解 AOP 中的連接點(Joinpoint)、切點(Pointcut)、增強(Advice)、引介(Introduction)、織入(Weaving)、切面(Aspect)這些概念?【基礎】

50、Spring 支持的事務管理類型有哪些?你在項目中使用哪種方式?【中等】

51、Spring MVC的工作原理是怎樣的?【基礎】

52、什麼是 XSS 攻擊?【困難】

53、SQL 注入攻擊?【困難】

54、什麼是CSRF攻擊?【困難】

四、redis

55、使用redis有哪些好處?【基礎】

56、Redis有哪些數據結構?【基礎】

57、如果有大量的key需要設置同一時間過期,一般需要注意什麼?【中等】

58、為什麼Redis需要把所有數據放到內存中?【中等】

59、Redis提供了哪幾種持久化方式?【中等】

60、如何選擇合適的持久化方式?【中等】

61、redis支持的java客戶端你用過哪個?【基礎】

62、Redis集群的主從複製模型是怎樣的?【困難】

63、Redis集群之間是如何複製的?【中等】

64、怎麼測試Redis的連通性?【基礎】

五、消息隊列

65、為什麼要用消息隊列?【中等】

66、使用消息隊列有什麼缺點【中等】

67、為什麼選用RocketMQ;RocketMQ和ActiveMQ的區別【困難】

68、RocketMQ是怎麼保證系統高可用的?【困難】

69、消息中間件集群崩潰,如何保證百萬生產數據不丟失?【中等】

六、spring boot

70、Spring Boot 的核心配置文件有哪幾個?它們的區別是什麼?【中等】

71、Spring Boot 的配置文件有哪幾種格式?它們有什麼區別?【中等】

72、Spring Boot 的核心註解是哪個?它主要由哪幾個註解組成的?【基礎】

73、開啟 Spring Boot 特性有哪幾種方式?【基礎】

74、Spring Boot 需要獨立的容器運行嗎?【基礎】

75、如何在 Spring Boot 啟動的時候運行一些特定的代碼?【中等】

76、Spring Boot 有哪幾種讀取配置的方式?【中等】

77、Spring Boot 如何定義多套不同環境配置?【中等】

78、SpringBoot中的定時任務如何實現?【中等】

79、我們如何連接一個像 MYSQL 或者 orcale 一樣的外部資料庫?【中等】

七、spring cloud

80、什麼是微服務【中等】

81、微服務之間是如何獨立通訊的spring Cloud和 Dubbo有哪些區別?【困難】

82、springcloud如何實現服務的註冊和發現【中等】

83、Ribbon和Feign的區別【中等】

84、springcloud斷路器的作用【中等】

85、springcloud如何實現服務的註冊和發現【中等】

86、springcloud中的組件有那些?【中等】

八、其他

87、cookie和session的區別【基礎】

88、一次完整的http請求過程【中等】

89、講一下長連接【困難】

90、TCP如何保證可靠傳輸?【困難】

91、URI和URL的區別【中等】

92、http和https的區別?【中等】

93、docker常用命令【中等】

94、什麼是Docker鏡像?【中等】

95、什麼是Docker容器?【中等】

96、什麼是Docker Hub?【中等】

97、什麼是 Git 復刻(fork)?復刻(fork)、分支(branch)和克隆(clone)之間有什麼區別?【中等】

98、「git pull」和「git fetch」之間有什麼區別?【中等】

99、使用Ajax的優缺點分別是什麼?【中等】

100、跨域問題,誰限制的跨域,怎麼解決【困難】

若有什麼疑問的話 也可以給小姐姐留言哦

相關焦點

  • 阿里螞蟻金服Java程式設計師面試的11個問題,你會幾個呢?
    比如阿里巴巴java面經、小米java面經、網易java面經等,吸引了大多數的程式設計師們的圍觀。比如面向對象基本知識,這幾乎是面試必考的,比如什麼是類,繼承,多態等等。面向對象的特徵:抽象、繼承、封裝、多態常見算法的應用,包括算法基礎和Java編程實現。總結一般是進行分類總結,善於抓重點,以便抓住面試官痛點。
  • Java面試的的時候你被提過哪些問題?
    同學們在踏出校園那一刻起,邊開始進入了社會,面臨著找工作、面試,那麼,當你被面試的時候,哪些Java題被面試官提問過?下面這些是常被問到的面試題,如果你覺得還有一些經常提到的,我沒有寫出來的,歡迎補充。J2SE基礎:1. 九種基本數據類型的大小,以及他們的封裝類。2. Switch能否用string做參數?3. equals與==的區別。4. Object有哪些公用方法?
  • 2019 最新 200 道 Java 面試題
    為什麼要公開這些面試題?原因一:身邊從事 Java 開發的人員越來越多,我的表弟表妹們,朋友的表弟表妹們,朋友的朋友的表弟表妹們,每次問我要相同的面試複習材料,已經讓我疲於應付,索性整理出來,直接發連結給他們。
  • 面試總結——Java高級工程師
    一、獨白之前也面試別人,現在輪到自己找工作,怎麼說呢,每個面試官的看法不一樣,面試的方式就不一樣,比如我面試別人我喜歡問項目中他用到了那些,然後針對用到的技術去問一些問題,或者說對於某些場景的一些技術實現方案是我特別喜歡問的,比如當你的接口服務數據被人截包了,你如何防止數據惡意提交?
  • Java 最常見的 200+ 面試題:面試必備
    聊回面試題這件事,這份面試清單原本是我們公司內部使用的,可到後來有很多朋友在微信上聯繫到我,讓我幫他們找一些面試方面的資料,而且這些關係也不太好拒絕,一呢,是因為這些找我,要面試題的人,不是我的好朋友的弟弟妹妹,就是我的弟弟妹妹們;二呢,我也不能馬馬虎虎的對付,受人之事忠人之命,我也不能辜負這份信任。
  • 一位Java後臺工程師的面試經歷
    Java基礎知識: 三家公司都問了java集合類的相關概念,各種集合結構之間內在區別: ArrayList,Vector,LinkList區別 HashMap,HashTable,ConCurrentHashMap區別 Collections.synchronizedXX 方法的原理 設計模式,這種問題感覺沒啥意義
  • 學了1年java的程式設計師面試,掛在了這道基礎算法題!
    這都是java的算法題,應該來講都是些比較簡單的算法題,但是我敢說很多基礎的學習的,或者想去面試的人都會不能完整的寫出來,現在
  • Java面試總結之Java基礎
    無論是工作多年的高級開發人員還是剛入職場的新人,在換工作面試的過程中,Java基礎是必不可少的面試題之一。能不能順利通過面試,拿到自己理想的offer,在準備面試的過程中,Java基礎也是很關鍵的。對於工作多年的開發人員來說,Java基礎往往是會被大家所忽略的,但在面試的過程中,確是必不可少的問題。在這篇文章裡就來為大家總結一下經常會被問到的Java基礎題。
  • 2年Java開發工作經驗,跳槽之後面試20餘家公司的總結
    分析:有些公司和面試官還是比較看重一個人的學習能力的,經驗代表著你現在在什麼級別,而學習能力則代表著你將來能到達什麼級別。學習過程:看了我的優劣勢介紹,你會發現我的優勢相對於我的劣勢來說,簡直不值一提。我自己對此也有清晰的認識,因此從過完年之後,我就開始抓緊空閒時間學習。
  • 2017年網友京東Java面試經驗:感覺問的比較基礎,大家都是這樣?
    面試官比較好,說你不能來也很正常,我們來進行一個20分鐘的面試吧。0.HTTP TCP UDP 的區別,具體用在哪些場景。1.說一下 java中的隊列 set map 區別,java裡的數據結構。講講它們的實現。
  • 10個經典的 Java main 方法面試題
    以下是筆者認為比較經典的關於Java main方法的面試題,與其說是Java面試題,其實也是Java的一些最基礎知識問題,分享給大家,如有錯誤,請指出。1.不用main方法如何定義一個類?例如,在下面的程序中,在實例化類「A」的時候,JVM傳遞什麼參數?package com.instanceofjava;public class A{public MainMethod(int i){} public void main(String[] args){}5.我們能不能聲明main()方法為非靜態?
  • 面試前必看Java線程面試題
    這個問題是上題的後續,大家都知道我們可以通過繼承Thread類或者調用Runnable接口來實現線程,問題是,那個方法更好呢?什麼情況下使用它?這個問題很容易回答,如果你知道Java不支持類的多重繼承,但允許你調用多個接口。所以如果你要繼承其他類,當然是調用Runnable接口好了。
  • 自學java包裝簡歷2年經驗,面試了15家公司都沒通過,什麼原因?
    地址廣州,自學2年java,沒有工作經驗自己感覺挺努力的,基礎有點差,幾大開源框架都會用,但是不了解原理,增刪改查都沒問題。最近包裝簡歷2年工作經驗,半個月面試了20家公司,甚至薪酬都降低到5K,都沒有一家通過。不知道什麼原因,都想放棄了!求前輩指點!
  • 50道Java集合經典面試題(收藏版)
    寫一段代碼在遍歷 ArrayList 時移除一個元素因為foreach刪除會導致快速失敗問題,fori順序遍歷會導致重複元素沒刪除,所以正確解法如下:第一種遍歷,倒敘遍歷刪除for(int i=list.size()-1; i>-1; i--)
  • 2年Java開發工作經驗面試總結
    分析:有些公司和面試官還是比較看重一個人的學習能力的,經驗代表著你現在在什麼級別,而學習能力則代表著你將來能到達什麼級別。學習過程:看了我的優劣勢介紹,你會發現我的優勢相對於我的劣勢來說,簡直不值一提。我自己對此也有清晰的認識,因此從過完年之後,我就開始抓緊空閒時間學習。
  • Java典型面試題 ——談談你對Java平臺的理解?
    出處 | 極客時間《Java 核心技術 36 講》  從你接觸 Java 開發到現在,你對 Java 最直觀的印象是什麼呢?是它宣傳的 「Write once, run anywhere」,還是目前看已經有些過於形式主義的語法呢?你對於 Java 平臺到底了解到什麼程度?請你先停下來總結思考一下。
  • 一些經典Java面試題&答案解析 || 附《Effective Java》中文版
    我們給大家準備了一些面試題,所有題目都是經過精心挑選的,很基礎又考驗求職者的基本功,應該說被面試到的機率很大。希望能對你有所幫助。1、下列代碼輸出內容是什麼?hashcode,且沒有NPE檢查,因此會拋出NPE異常。
  • Java 集合框架面試問題集錦
    下面是面試Java核心技術的一些很實用的問題。Q:最常見的數據結構有哪些,在哪些場景下應用它們?A. 大部分人都會遺漏樹和圖這兩種數據結構。樹和圖都是很有用的數據結構。如果你在回答中提及到它們的話,面試者可能會對你進行進一步進行的考核。Q:你如何自己實現List,Set和Map?
  • 給Java程式設計師的20個鍊表面試題
    什麼是鍊表?數據結構在程序面試中極其重要。鍊表則是對數組數據結構進行的補充,是另一種常見的數據結構。和數組相似的是,鍊表也是線性數據結構,並以線性方式儲存元素。但是,和數組不同的是,鍊表不將元素儲存在連續的位置;相反,其元素分散在內存中的各個地方,並以節點進行相互連接。鍊表不過是一個節點的列表,其中每一個節點都包含存儲的值和下一個節點的位置。
  • 乾貨#Java常見面試問題匯總
    那麼,在JAVA如此盛行的時候,一般面試官都會考察我們哪些專業問題呢?筆者為計劃從事JAVA編程相關崗位的你們總結了一些面試官常問到的問題,希望給大家做個參考。③. newSingleThreadExecutor()這是一個單線程的Executor,它創建單個工作線程來執行任務,如果這個線程異常結束,會創建一個新的來替代它;它的特點是能確保依照任務在隊列中的順序來串行執行。