前言
前段時間陪同之前一起作業的同事去面試,第一站是去深圳,第二站上海,第三站杭州,面試什么公司我在這里就不多說了,你們知道是一線公司就行,其實本來真的沒打算寫這篇文章,主要是自己的記憶力不是很好,再者是最近好多人詢問2020年最新的面試題有點多,我實在回答不過來,而且怕為了避免重復回答,給自己省點力氣,干脆就在這里統一回復了,說實話,雖作為陪同人,面試的時候我是不可以一同進去面試的,同事在面試完后出來也是憑借他模糊的記憶,來慢慢回憶當時HR問的幾個問題,以下是我整理的一些面試題,雖然不是很完整,但差不多也是必問的幾個題目了(前言告訴大家,面試的答案我就不一個一個的寫出來了,畢竟等級的不同,回答時的答案也不同,這全靠大家自己慢慢領悟了)我能幫的也只有這么多了,以下便是面試題,
第一站:(深圳)
- 多個執行緒同時讀寫,讀執行緒的數量遠遠?于寫執行緒,你認為應該如何解決 并發的問題?你會選擇加什么樣的鎖?
- JAVA的AQS是否了解,它是?嘛的?
- 除了synchronized關鍵字之外,你是怎么來保障執行緒安全的?
- 什么時候需要加volatile關鍵字?它能保證執行緒安全嗎?
- 執行緒池內的執行緒如果全部忙,提交?個新的任務,會發?什么?佇列全部 塞滿了之后,還是忙,再提交會發?什么?
- Tomcat本身的引數你?般會怎么調整?
- synchronized關鍵字鎖住的是什么東??在位元組碼中是怎么表示的?在內 存中的物件上表現為什么?
- wait/notify/notifyAll?法需不需要被包含在synchronized塊中?這是為什 么?
- ExecutorService你?般是怎么?的?是每個service放?個還是?個項? ??放?個?有什么好處?
第二,第三站
Spring
- 你有沒有?過Spring的AOP? 是?來?嘛的? ?概會怎么使??
- 如果?個接?有2個不同的實作, 那么怎么來Autowire?個指定的實作?
- Spring的宣告式事務 @Transaction注解?般寫在什么位置? 拋出了例外 會?動回滾嗎?有沒有辦法控制不觸發回滾?
- 如果想在某個Bean?成并裝配完畢后執???的邏輯,可以什么?式實 現?
- SpringBoot沒有放到web容器?為什么能跑HTTP服務?
- SpringBoot中如果你想使??定義的配置?件?不僅僅是 application.properties,應該怎么弄?
- SpringMVC中RequestMapping可以指定GET, POST?法么?怎么指定?
- SpringMVC如果希望把輸出的Object(例如XXResult或者XXResponse)這 種包裝為JSON輸出, 應該怎么處理?
- 怎樣攔截SpringMVC的例外,然后做?定義的處理,?如打?志或者包裝 成JSON
- 1.struts1和struts2的區別
- .struts2和springMVC的區別
- spring框架中需要參考哪些jar包,以及這些jar包的用途
- springMVC的原理
- springMVC注解的意思
- spring中beanFactory和ApplicationContext的聯系和區別
- spring注入的幾種方式
- spring如何實作事物管理的
- springIOC和AOP的原理
- hibernate中的1級和2級快取的使用方式以及區別原理
- spring中回圈注入的方式
MySQL
- 如果有很多資料插?MYSQL 你會選擇什么?式?
- 如果查詢很慢,你會想到的第?個?式是什么?索引是?嘛的?
- 如果建了?個單列索引,查詢的時候查出2列,會?到這個單列索引嗎?
- 如果建了?個包含多個列的索引,查詢的時候只?了第?列,能不能?上 這個索引?查三列呢?
- 接上題,如果where條件后?帶有?個 i + 5 < 100 會使?到這個索引嗎?
- 怎么看是否?到了某個索引?
- like %aaa%會使?索引嗎? like aaa%呢?
- drop、truncate、delete的區別?
- 平時你們是怎么監控資料庫的? 慢SQL是怎么排查的?
- 你們資料庫是否?持emoji表情,如果不?持,如何操作?
- 你們的資料庫單表資料量是多少??般多?的時候開始出現查詢性能急 劇下降?
- 查詢死掉了,想要找出執?的查詢行程?什么命令?找出來之后?般你 會?嘛?
- 讀寫分離是怎么做的?你認為中間件會怎么來操作?這樣操作跟事務有 什么關系? 14. 分庫分表有沒有做過?線上的遷移程序是怎么樣的?如何確定資料是正 確的?
- MySQL常用命令
- 資料庫中事物的特征?
- JDBC的使用?
- InnodB與MyISAM的區別
- MySQL為什么使用B+樹作為索引?
JVM
- 你知道哪些或者你們線上使?什么GC策略? 它有什么優勢,適?于什么 場景?
- JAVA類加載器包括?種?它們之間的??關系是怎么樣的?雙親委派機 制是什么意思?有什么好處?
- 如何?定義?個類加載器?你使?過哪些或者你在什么場景下需要?個? 定義的類加載器嗎?
- 堆記憶體設定的引數是什么? 5. Perm Space中保存什么資料? 會引起OutOfMemory嗎? 6. 做gc時,?個物件在記憶體各個Space中被移動的順序是什么?
- 你有沒有遇到過OutOfMemory問題?你是怎么來處理這個問題的?處理 程序中有哪些識訓?
- 1.8之后Perm Space有哪些變動? MetaSpace??默認是?限的么? 還是 你們會通過什么?式來指定???
- Jstack是?什么的? Jstat呢? 如果線上程式周期性地出現卡頓,你懷疑可 能是gc導致的,你會怎么來排查這個問題?執行緒?志?般你會看其中的什么 部分?
- StackOverFlow例外有沒有遇到過??般你猜測會在什么情況下被觸 發?如何指定?個執行緒的堆疊????般你們寫多少?
多執行緒
1) 什么是執行緒?
2) 執行緒和行程有什么區別?
3) 如何在Java中實作執行緒?
4) 用Runnable還是Thread?
6) Thread 類中的start() 和 run() 方法有什么區別?
7) Java中CyclicBarrier 和 CountDownLatch有什么不同?
8) Java中的volatile 變數是什么?
9) Java中的同步集合與并發集合有什么區別?
10) 如何避免死鎖?
11) Java中活鎖和死鎖有什么區別?
12) Java中synchronized 和 ReentrantLock 有什么不同?
13) Java中ConcurrentHashMap的并發度是什么?
14) 如何在Java中創建Immutable物件?
15) 單例模式的雙檢鎖是什么?
16) 寫出3條你遵循的多執行緒最佳實踐
17) 如何避免死鎖?
- 常用的執行緒池模式以及不同執行緒池的使用場景
Netty
1.BIO、NIO和AIO的區別?
2.NIO的組成?
3.Netty的特點?
4.Netty的執行緒模型?
5.TCP 粘包/拆包的原因及解決方法?
6.了解哪幾種序列化協議?
7.如何選擇序列化協議?
8.Netty的零拷貝實作?
9.Netty的高性能表現在哪些方面?
10.NIOEventLoopGroup原始碼?
Redis
1.Redis與Memorycache的區別?
2.Redis的五種資料結構?
3.漸進式rehash程序?
4.rehash原始碼?
5.持久化機制6.reaof原始碼?
7.事務與事件
8.主從復制
9.啟動程序
10.集群
11.Redis的6種資料淘汰策略
12.redis的并發競爭問題?
Hadoop
1.HDFS的特點?
2.客戶端從HDFS中讀寫資料程序?
3.HDFS的檔案目錄結構?
4.NameNode的記憶體結構?
5.NameNode的重啟優化?
6.Git的使用?
7.Maven的使用
部分高薪面試題答案


好了,到這里面試題差不多已經寫完了,如果以上的面試題題目你已經全部理解,全部能回答出來了,那么我可以在這里告訴你,你牛批,我服,如果以上題目還不會的,還回答不上來的,那么你可以跟著我的腳步領取下我整理的答案福利,我來介紹一下我總結出來的幾大體系,也有對應的學習資料Java工程化、高性能及分布式、高性能、深入淺出,性能調優、Spring,MyBatis,Netty原始碼分析等知識點的講解
轉發+評論后關注我添加助理VX:MXW5308 即可免費領取
以下就是我總結出來的幾大體系圖:
一、原始碼分析

二、分布式架構

三、微服務

四、性能優化

五、Java工程化

對應的架構視頻(部分)


總結:
以上就是我要說的寫的內容,希望以上的內容可以幫助到正在默默艱辛,遇到瓶疾且不知道怎么辦的Java程式員們,我能幫你的只有這么多了,面試題已經總結完了,我能幫的,也只有這么多了,希望大家在往后的作業與面試中,一切順利,
轉發+評論后關注我添加助理VX:MXW5308 即可免費領取
轉載請註明出處,本文鏈接:https://www.uj5u.com/qita/196120.html
標籤:其他
