美團】Java 崗 154 道面試題


Java集合22題

ArrayList 和 Vector 的區別。
說說 ArrayList,Vector, LinkedList 的存儲性能和特性。
快速失敗 (fail-fast) 和安全失敗 (fail-safe) 的區別是什么?
hashmap 的數據結構。
HashMap 的工作原理是什么?
Hashmap 什么時候進行擴容呢?
List、Map、Set 三個接口,存取元素時,各有什么特點?
Set 里的元素是不能重復的,那么用什么方法來區分重復與否呢? 是用 == 還是 equals()? 它們有何區別?
兩個對象值相同 (x.equals(y) == true),但卻可有不同的 hash code,這句話對不對?
heap 和 stack 有什么區別。
Java 集合類框架的基本接口有哪些?
HashSet 和 TreeSet 有什么區別?
HashSet 的底層實現是什么?
LinkedHashMap 的實現原理?
為什么集合類沒有實現 Cloneable 和 Serializable 接口?
什么是迭代器 (Iterator)?
Iterator 和 ListIterator 的區別是什么?
數組 (Array) 和列表 (ArrayList) 有什么區別?什么時候應該使用 Array 而不是 ArrayList?
Java 集合類框架的最佳實踐有哪些?
Set 里的元素是不能重復的,那么用什么方法來區分重復與否呢?是用 == 還是 equals()?它們有何區別?
Comparable 和 Comparator 接口是干什么的?列出它們的區別
Collection 和 Collections 的區別。
JVM與調優21題

Java 類加載過程?
描述一下 JVM 加載 Class 文件的原理機制?
Java 內存分配。
GC 是什么? 為什么要有 GC?
簡述 Java 垃圾回收機制
如何判斷一個對象是否存活?(或者 GC 對象的判定方法)
垃圾回收的優點和原理。並考慮 2 種回收機制
垃圾回收器的基本原理是什么?垃圾回收器可以馬上回收內存嗎?有什么辦法主動通知虛擬機進行垃圾回收?
Java 中會存在內存泄漏嗎,請簡單描述
深拷貝和淺拷貝。
System.gc() 和 Runtime.gc() 會做什么事情?
finalize() 方法什么時候被調用?析構函數 (finalization) 的目的是什么?
如果對象的引用被置為 null,垃圾收集器是否會立即釋放對象占用的內存?
什么是分布式垃圾回收(DGC)?它是如何工作的?
串行(serial)收集器和吞吐量(throughput)收集器的區別是什么?
在 Java 中,對象什么時候可以被垃圾回收?
簡述 Java 內存分配與回收策率以及 Minor GC 和 Major GC。
JVM 的永久代中會發生垃圾回收么?
Java 中垃圾收集的方法有哪些?
什么是類加載器,類加載器有哪些?
類加載器雙親委派模型機制?
並發編程28題

Synchronized 用過嗎,其原理是什么?
你剛才提到獲取對象的鎖,這個“鎖”到底是什么?如何確定對象的鎖?
什么是可重入性,為什么說 Synchronized 是可重入鎖?
JVM 對 Java 的原生鎖做了哪些優化?48
為什么說 Synchronized 是非公平鎖?49
什么是鎖消除和鎖粗化?49
為什么說 Synchronized 是一個悲觀鎖?樂觀鎖的實現原理又是什么?什么是 CAS,它有什么特性?
樂觀鎖一定就是好的嗎?
跟 Synchronized 相比,可重入鎖 ReentrantLock 其實現原理有什么不同?
那么請談談 AQS 框架是怎么回事兒?
請盡可能詳盡地對比下 Synchronized 和 ReentrantLock 的異同。
ReentrantLock 是如何實現可重入性的?
除了 ReetrantLock,你還接觸過 JUC 中的哪些並發工具?
請談談 ReadWriteLock 和 StampedLock。
如何讓 Java 的線程彼此同步?你了解過哪些同步器?請分別介紹下。
CyclicBarrier 和 CountDownLatch 看起來很相似,請對比下呢?
Java 線程池相關問題
Java 中的線程池是如何實現的?
創建線程池的幾個核心構造參數?
線程池中的線程是怎么創建的?是一開始就隨着線程池的啟動創建好的嗎?
既然提到可以通過配置不同參數創建出不同的線程池,那么 Java 中默認實現好的線程池又有哪些呢?請比較它們的異同
如何在 Java 線程池中提交線程?
什么是 Java 的內存模型,Java 中各個線程是怎么彼此看到對方的變量的?
請談談 volatile 有什么特點,為什么它能保證變量對所有線程的可見性?
既然 volatile 能夠保證線程間的變量可見性,是不是就意味着基於 volatile 變量的運算就是並發安全的?
請對比下 volatile 對比 Synchronized 的異同。
請談談 ThreadLocal 是怎么解決並發安全的?
很多人都說要慎用 ThreadLocal,談談你的理解,使用 ThreadLocal 需要注意些什么?
spring 25題

1、什么是 Spring 框架?Spring 框架有哪些主要模塊?
2、使用 Spring 框架能帶來哪些好處?
3、什么是控制反轉(IOC)?什么是依賴注入?
4、請解釋下 Spring 框架中的 IoC?
5、BeanFactory 和 ApplicationContext 有什么區別?
6、Spring 有幾種配置方式?
7、如何用基於 XML 配置的方式配置 Spring?
8、如何用基於 Java 配置的方式配置 Spring?
9、怎樣用注解的方式配置 Spring?
10、請解釋 Spring Bean 的生命周期?
11、Spring Bean 的作用域之間有什么區別?
12、什么是 Spring inner beans?
13、Spring 框架中的單例 Beans 是線程安全的么?
14、請舉例說明如何在 Spring 中注入一個 Java Collection?
15、如何向 Spring Bean 中注入一個 Java.util.Properties?
16、請解釋 Spring Bean 的自動裝配?
17、請解釋自動裝配模式的區別?
18、如何開啟基於注解的自動裝配?
19、請舉例解釋@Required 注解?
20、請舉例解釋@Autowired 注解?
21、請舉例說明@Qualifier 注解?
22、構造方法注入和設值注入有什么區別?
23、Spring 框架中有哪些不同類型的事件?
24、FileSystemResource 和 ClassPathResource 有何區別?
25、Spring 框架中都用到了哪些設計模式?

設計模式 10題

1.請列舉出在 JDK 中幾個常用的設計模式?
2.什么是設計模式?你是否在你的代碼里面使用過任何設計模式?
3.Java 中什么叫單例設計模式?請用 Java 寫出線程安全的單例模式
4.在 Java 中,什么叫觀察者設計模式(observer design pattern)?
5.使用工廠模式最主要的好處是什么?在哪里使用?
6.舉一個用 Java 實現的裝飾模式(decorator design pattern)?它是作用於對象層次還是類
層次?
7.在 Java 中,為什么不允許從靜態方法中訪問非靜態變量?
8.設計一個 ATM 機,請說出你的設計思路?
9.在 Java 中,什么時候用重載,什么時候用重寫?
10.舉例說明什么情況下會更傾向於使用抽象類而不是接口

springboot 22題

什么是 Spring Boot?
Spring Boot 有哪些優點?
什么是 JavaConfig?
如何重新加載 Spring Boot 上的更改,而無需重新啟動服務器?
Spring Boot 中的監視器是什么?
如何在 Spring Boot 中禁用 Actuator 端點安全性?
如何在自定義端口上運行 Spring Boot 應用程序?
什么是 YAML?
如何實現 Spring Boot 應用程序的安全性?
如何集成 Spring Boot 和 ActiveMQ?
如何使用 Spring Boot 實現分頁和排序?
什么是 Swagger?你用 Spring Boot 實現了它嗎?
什么是 Spring Profiles?
什么是 Spring Batch?
什么是 FreeMarker 模板?
如何使用 Spring Boot 實現異常處理?
您使用了哪些 starter maven 依賴項?
什么是 CSRF 攻擊?
什么是 WebSockets?
什么是 AOP?
什么是 Apache Kafka?
我們如何監視所有 Spring Boot 微服務?

Netty10題

BIO、NIO和AIO的區別?
NIO的組成?
Netty的特點?
Netty的線程模型?
TCP 粘包/拆包的原因及解決方法?
了解哪幾種序列化協議?
如何選擇序列化協議?
Netty的零拷貝實現?
Netty的高性能表現在哪些方面?
NIOEventLoopGroup源碼?

Redis 16題

什么是redis?
Reids的特點
Redis支持的數據類型
Redis是單進程單線程的
虛擬內存
Redis鎖
讀寫分離模型
數據分片模型
Redis的回收策略
使用Redis有哪些好處?
redis相比memcached有哪些優勢?4
redis常見性能問題和解決方案
MySQL里有2000w數據,redis中只存20w的數據,如何保證redis中的數據都是熱點數據245
Memcache與Redis的區別都有哪些?
Redis 常見的性能問題都有哪些?如何解決?
Redis 最適合的場景


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM