首頁 > 軟體

2021年大廠Java面試真題集錦

2021-05-26 19:01:06

Java基礎1.JAVA 中的幾種資料類型是什麼,各自佔用多少位元組。2.String 類能被繼承嗎,為什麼。3. 兩個物件的 hashCode() 相同,則 equals() 也一定為 true,對嗎?4. String 屬於基礎的資料類型嗎?5.Java 中操作字元串都有哪些類?它們之間有什麼區別?6.Java 中 IO 流分為幾種?7.BIO、NIO、AIO 有什麼區別?8.用過哪些 Map 類,都有什麼區別,HashMap 時執行緒安全的嗎,併發下使用的 Map 是什麼,他們的內部原理分別是什麼,比如儲存方法,hashcode,擴容,預設容量等。9. 如何將字元串反轉?10.抽象類必須要有抽象方法嗎?11.普通類和抽象類有哪些區別?12.抽象類能使用 final 修飾嗎?13.ArrayList 和 LinkedList 有什麼區別?14.ConcurrentHashMap的資料結構(必考)15.volatile作用(必考)16.Atomic類如何保證原子性(CAS操作)(必考)17.為什麼要使用執行緒池(必考)

RedisRedis的應用場景Redis支援的資料類型(必考)zset跳錶的資料結構(必考)Redis的資料過期策略(必考)Redis的LRU過期策略的具體實現如何解決Redis快取雪崩,快取穿透問題Redis的持久化機制(必考)Redis為什麼是單執行緒的?什麼是快取穿透?怎麼解決?Redis持久化有幾種方式?Redis為什麼這麼快?(必考)Redis怎麼實現分散式鎖?Redis如何做記憶體優化?Redis淘汰策略有哪些?Redis常見的效能問題有哪些?該如何解決?Redis的使用要注意什麼?

ZooKeeperCAP定理ZAB協議leader選舉演算法和流程zookeeper 是什麼?zookeeper 有幾種部署模式?zookeeper 怎麼保證主從節點的狀態同步?

Mysql事務的基本要素事務隔離級別(必考)如何解決事務的併發問題(髒讀,幻讀)(必考)MVCC多版本併發控制(必考)binlog,redolog,undolog都是什麼,起什麼作用InnoDB的行鎖/表鎖myisam和innodb的區別,什麼時候選擇myisam為什麼選擇B+樹作為索引結構(必考)索引B+樹的葉子節點都可以存哪些東西(必考)查詢在什麼時候不走(預期中的)索引(必考)sql如何優化explain是如何解析sql的order by原理

JVM運行時資料區域(記憶體模型)(必考)垃圾回收機制(必考)垃圾回收演算法(必考)Minor GC和Full GC觸發條件GC中Stop the world(STW)各垃圾回收器的特點及區別雙親委派模型JDBC和雙親委派模型關係JVM 中一次完整的 GC 流程是什麼樣子的,物件如何晉升到老年代,說說你知道的幾種主要的 JVM 參數

SpringSpring的IOC/AOP的實現(必考)動態代理的實現方式(必考)Spring如何解決迴圈依賴(三級快取)(必考)Spring的後置處理器Spring的@Transactional如何實現的(必考)Spring的事務傳播級別BeanFactory和ApplicationContext的聯絡和區別

其他高併發系統的限流如何實現高併發秒殺系統的設計負載均衡如何設計作業系統篇程序和執行緒的區別程序同步的幾種方式執行緒間同步的方式什麼是緩衝區溢位。有什麼危害,其原因是什麼程序中有哪幾種狀態分頁和分段有什麼區別

多執行緒篇多執行緒的幾種實現方式,什麼是執行緒安全volatile 的原理,作用,能代替鎖嗎?sleep 和 wait 的區別sleep(0)的意義Lock 和 Synchronized 的區別synchronized 的原理是什麼,一般用在什麼地方(比如載入靜態方法和非靜態方法的區別)

補充另外還會考一些計算機網路之類的。像訊息佇列,RPC框架這種考的比較少。計算機網路就是分層啊,tcp/udp啊,三次握手之類的。作業系統就是程序與執行緒啊,程序的資料結構以及如何通訊之類的。資料結構的排序演算法也比較常考,考的話一定會讓你手寫個快排。剩下的演算法題就靠LeetCode的積累了。其實非演算法崗考的演算法題都蠻簡單的,很多題完全就是考察你智力是否正常,稍微難點的涉及到一些演算法思想的按照LeetCode題目類型的分類,每種題做一兩道基本就能完全應付面試了。接下來,就要跟大家分享資料結構與演算法的筆記了!資料結構與演算法筆記動態規劃設計資料結構系列

演算法思維繫列

高頻面試題系列

計算機技術

——對文章進行轉發+評論,關注我,然後再私信獲取口令「面試」100%免費領取。


IT145.com E-mail:sddin#qq.com