【轉】Java最多見的200+面試題

今天看到一份面試題總結,感受很到位,主要包括如下模塊:Java基礎、容器、多線程、反射、對象拷貝、Java Web模塊,異常、網絡、設計模式、Spring/Spring MVC 、Spring Boot/Spring Cloud、Hibernate、Mybaits、RabbitMQ、Kafka、Zookeeper、Mysql、Redis、JVM。以下圖所示:html

 

下面一塊兒看下面試題,面試題爲今日頭條文章中的TL提供,答案爲筆者學習時候自我梳理,如有不正確的地方,請多指正,感謝!java

1、Java基礎

1.JDK和JRE有什麼區別?mysql

JDK就是Java Development Kit 。JDK是面向開發人員使用的SDK,它提供了Java的開發環境和運行環境。SDK是Software Development Kit 通常指軟件開發包,能夠包括函數庫、編譯程序等。面試

JRE是Java Runtime Enviroment是指Java的運行環境,是面向Java程序的使用者,而不是開發者。redis

2.== 和 equals 的區別是什麼?算法

== 比較的是變量(棧)內存中存放的對象的(堆)內存地址,用來判斷兩個對象的地址是否相同,便是否是指相同一個對象。比較的是真正意義上的指針操做。
a.比較的是操做符兩端的操做數是不是同一個對象。
b.兩邊的操做數必須是同一類型的(能夠是父子類之間)才能編譯經過。
c.比較的是地址,若是是具體的阿拉伯數字的比較,值相等則爲true,如:
int a=10 與 long b=10L 與 double c=10.0都是相同的(爲true),由於他們都指向地址爲10的堆。spring

equals用來比較的是兩個對象的內容是否相等,因爲全部的類都是繼承自java.lang.Object類的,因此適用於全部對象,若是沒有對該方法進行覆蓋的話,調用的仍然是Object類中的方法,而Object中的equals方法返回的倒是==的判斷。sql

3.兩個對象的 hashCode()相同,則 equals()也必定爲 true,對嗎?數據庫

兩個obj,若是equals()相等,hashCode()必定相等。兩個obj,若是hashCode()相等,equals()不必定相等(Hash散列值有衝突的狀況,雖然機率很低)。設計模式

https://www.cnblogs.com/jesonjason/p/5492208.html

4.final 在 java 中有什麼做用?

final能夠修飾類,函數,變量
修飾類時:意思是修飾類爲最終類,任何類不能再繼承它.
修改函數時:意思是該方法在類裏是最終方法,繼承它的方法不能去重寫它.
修飾變量時:意思是被修飾的變量是常量或者叫終態變量,一旦初始化後就不能再改變變量的值.

5.java 中的 Math.round(-1.5) 等於多少?

-1    知識點:Math.round()方法的使用——括號內的數+0.5以後,向下取值

6.String 屬於基礎的數據類型嗎?

不屬於。String是一個對象。

8種基本數據類型: boolean byte char shrot int long float double 
對應的基本類型包裝類:Boolean Byte Character Short Integer Long Float Double

7.java 中操做字符串都有哪些類?它們之間有什麼區別?

  String、StringBuffer、StringBuilder

  區別:String是不可變的對象,每次對String類型的改變都會生成一個新的對象,StringBuffer和StringBuilder是能夠改變的對象。

     對於操做效率:StringBuilder > StringBuffer > String

     對於線程安全:StringBuffer 是線程安全的,可用於多線程;StringBuilder 是線程不安全的,用於單線程

     不頻繁的字符串操做使用 String。反之,StringBuffer 和 StringBuilder 都優於String

8.String str="i"與 String str=new String("i")同樣嗎?

不同。前者是一個常量,後者又從新new了一個對象,內存空間不同。

9.如何將字符串反轉?

https://www.cnblogs.com/lanseyitai1224/p/6955609.html

10.String 類的經常使用方法都有那些?

 

11.抽象類必需要有抽象方法嗎?

 抽象類不必定要有抽象方法;可是有抽象方法的類必定是抽象類。

12.普通類和抽象類有哪些區別?

a.抽象類不能被實例化。
b.抽象類能夠有構造函數,被繼承時子類必須繼承父類一個構造方法,抽象方法不能被聲明爲靜態。
c.抽象方法只需申明,而無需實現,抽象類中能夠容許普通方法有主體
d.含有抽象方法的類必須申明爲抽象類
e.抽象的子類必須實現抽象類中全部抽象方法,不然這個子類也是抽象類。

13.抽象類能使用 final 修飾嗎?

final關鍵字不能用來修飾抽象類和接口

14.接口和抽象類有什麼區別?

a.抽象類和接口都不能直接實例化,若是要實例化,抽象類變量必須指向實現全部抽象方法的子類對象,接口變量必須指向實現全部接口方法的類對象。
b.抽象類要被子類繼承,接口要被類實現。
c.接口只能作方法申明,抽象類中能夠作方法申明,也能夠作方法實現
d.接口裏定義的變量只能是公共的靜態的常量,抽象類中的變量是普通變量。
e.抽象類裏的抽象方法必須所有被子類所實現,若是子類不能所有實現父類抽象方法,那麼該子類只能是抽象類。一樣,一個實現接口的時候,如不能所有實現接口方法,那麼該類也只能爲抽象類。
f.抽象方法只能申明,不能實現,接口是設計的結果 ,抽象類是重構的結果
g.抽象類裏能夠沒有抽象方法
h.若是一個類裏有抽象方法,那麼這個類只能是抽象類
i.抽象方法要被實現,因此不能是靜態的,也不能是私有的。
j.接口可繼承接口,並可多繼承接口,但類只能單根繼承。

15.java 中 IO 流分爲幾種?

https://www.cnblogs.com/QQ846300233/p/6046388.html

16.BIO、NIO、AIO 有什麼區別?

https://blog.csdn.net/u010310183/article/details/81700405

17.Files的經常使用方法都有哪些?

http://www.javashuo.com/article/p-dpmbvpaf-bn.html

2、容器

18.java 容器都有哪些?

 https://www.cnblogs.com/hellowzd/p/9576966.html

19.Collection 和 Collections 有什麼區別?

Collection是集合操做的接口,而Collections是一個類,專門提供了各個集合接口的操做方法。

20.List、Set、Map 之間的區別是什麼?

  • List和Set是單列集合接口,Map是雙列集合接口。
  • List:元素有序,可重複。
      • ArrayList:底層是使用Object數組實現的。特色:有索引(腳標),查找速度快,增刪慢。
      • LinkedList:底層是使用鏈表數據結構實現的。特色:無索引,查詢速度慢,增刪快。。
      • Vector:線程同步數組 基本拋棄使用。
    Set:元素無序,不重複,無索引。
    • HashSet:底層是使用一個哈希表支持的。特色:存取速度快。線程非同步,保證元素惟一性原理:判斷hashCode是否相同,若是相同在判斷equals方法是否爲true。
    • TreeSet:二叉樹。特色:可用兩種方法對集合中元素排序,1.實現comparable接口,覆蓋compareTo方法。2.集合創建時規定,並自定義比較類。
  • Map:雙列集合接口,用於存放鍵值對。鍵值是惟一的,不可重複
  • 補充:——array:數組,能夠存儲對象和基本數據類型,長度固定。

21.HashMap 和 Hashtable 有什麼區別?

  主要的區別有:線程安全性,同步(synchronization),以及速度。

  HashMap是非線程安全的,只是用於單線程環境下,Hashtable則適用於多線程環境。

22.如何決定使用 HashMap 仍是 TreeMap?

  TreeMap默認是按照Key值升序排序的,HashMap的Key值實現散列hashCode(),分佈是散列的均勻的,不支持排序;大多狀況下HashMap有更好的性能,因此大多不須要排序的時候咱們會使用HashMap.

23.說一下 HashMap 的實現原理?

 

24.說一下 HashSet 的實現原理?

  往HashSet添加元素的時候,首先HashSet會調用元素的hashCode方法獲得元素的哈希碼值,而後會通過一系列運算就能夠算出該元素在哈希表中的存儲位置,這樣就會出現兩種狀況:
狀況1:若是算出該元素的位置目前沒有任何元素存儲,那麼該元素能夠直接存儲 
狀況2: 若是算出該元素的位置目前已經存有其餘的元素,那麼還會調用元素的equals方法與該位置的元素再比較一次。若是equals方法返回的是false,那麼該元素容許存儲,若是euqlas方法返回的是true,那麼該元素被視爲重複元素,不容許存儲。

25.ArrayList 和 LinkedList 的區別是什麼?

  ArraryList 底層 是使用Object數組實現的,特色: 查詢速度快,增刪慢。

  LinkedList 底層是使用鏈表數據結構實現的, 特色: 查詢速度慢,增刪快。

26.如何實現數組和 List 之間的轉換?

  List轉數組:toArray(arraylist.size())方法

  數組轉List:Arrays的asList(a)方法

List<String> arrayList = new ArrayList<String>();
arrayList.add("s");
arrayList.add("e");
arrayList.add("n");
/**
 * ArrayList轉數組
 */
int size=arrayList.size();
String[] a = arrayList.toArray(new String[size]);
//輸出第二個元素
System.out.println(a[1]);//結果:e
//輸出整個數組
System.out.println(Arrays.toString(a));//結果:[s, e, n]
/**
 * 數組轉list
 */
List<String> list=Arrays.asList(a);
/**
* list轉Arraylist
*/
List<String> arrayList2 = new ArrayList<String>();
arrayList2.addAll(list);
System.out.println(list);

27.ArrayList 和 Vector 的區別是什麼?

28.Array 和 ArrayList 有何區別?

  一、能夠將 ArrayList想象成一種「會自動擴增容量的Array」;

  二、Array([]):最高效;可是其容量固定且沒法動態改變;
             ArrayList:  容量可動態增加;但犧牲效率;

  三、在定義一個數組的時候,必須指定這個數組的數據類型及數組的大小,也就是說數組中存放的元素個數固定而且類型同樣;

   在不使用泛型的狀況下,arraylist是能夠添加進不一樣類型的元素的,並且arraylist是能夠不用指定長度的。在使用泛型時,咱們就只能添加一種類型的數據了。

總結:1.ArrayList是Array的複雜版本;
      2.存儲的數據類型:Array只能存儲相同數據類型的數據,而ArrayList能夠存儲不一樣數據類型的數據;
      3.長度的可變:Array的長度是固定的,而ArrayList的長度是可變的。

29.在 Queue 中 poll()和 remove()有什麼區別? 

  poll() ,若是隊列爲空的時候,則會拋出異常

  而remove()只會返回null

30.哪些集合類是線程安全的?

31.迭代器 Iterator 是什麼?

  迭代器 (Iterator )是一種設計模式,在Java中,它是一個對象,它的任務就是遍歷並選擇序列中的對象,而開發人員不須要了解該序列的底層結構。只要拿到這個對象,使用迭代器就能夠遍歷這個對象的內部。迭代器一般被稱爲「輕量級」對象,由於建立它的代價很小。

32.Iterator 怎麼使用?有什麼特色?

如何使用?

  一、經過調用類集的iterator()方法得到對類集的迭代方法;

  二、創建一個調用hasNext()方法的循環,只要hasNext()返回true,就進行循環迭代;

  三、在循環內部,經過調用next()方法來獲得每個元素。

特色:

  • Iterator遍歷集合元素的過程當中不容許線程對集合元素進行修改,不然會拋出ConcurrentModificationEception的異常。
  • Iterator遍歷集合元素的過程當中能夠經過remove方法來移除集合中的元素。
  • Iterator必須依附某個Collection對象而存在,Iterator自己不具備裝載數據對象的功能。
  • Iterator.remove方法刪除的是上一次Iterator.next()方法返回的對象。

33.Iterator 和 ListIterator 有什麼區別?

  1. iterator()方法在set和list接口中都有定義,可是ListIterator()僅存在於list接口中(或實現類中);

  2. ListIterator有add()方法,能夠向List中添加對象,而Iterator不能

  3. ListIterator和Iterator都有hasNext()和next()方法,能夠實現順序向後遍歷,可是ListIterator有hasPrevious()和previous()方法,能夠實現逆向(順序向前)遍歷。Iterator就不能夠。

  4. ListIterator能夠定位當前的索引位置,nextIndex()和previousIndex()能夠實現。Iterator沒有此功能。

  5. 均可實現刪除對象,可是ListIterator能夠實現對象的修改,set()方法能夠實現。Iierator僅能遍歷,不能修改。  

34.怎麼確保一個集合不能被修改?

3、多線程

35.並行和併發有什麼區別?

併發:指應用可以交替執行不一樣的任務,其實併發有點相似於多線程的原理,多線程並不是是同時執行多個任務,若是你開兩個線程執行,就是在你幾乎不可能察覺到的速度不斷去切換這兩個任務,已達到"同時執行效果",其實並非的,只是計算機的速度太快,咱們沒法察覺到而已.
就相似於你,吃一口飯喝一口水,以正常速度來看,徹底可以看的出來,當你把這個過程以n倍速度執行時..能夠想象一下.

並行:指應用可以同時執行不一樣的任務,例:吃飯的時候能夠邊吃飯邊打電話,這兩件事情能夠同時執行

36.線程和進程的區別?

http://www.javashuo.com/article/p-qtxtqonl-hc.html

37.守護線程是什麼?

守護線程(即daemon thread),是個服務線程,準確地來講就是服務其餘的線程,這是它的做用——而其餘的線程只有一種,那就是用戶線程。因此java裏線程分2種,
一、守護線程,好比垃圾回收線程,就是最典型的守護線程。
二、用戶線程,就是應用程序裏的自定義線程。

守護線程
一、守護線程,專門用於服務其餘的線程,若是其餘的線程(即用戶自定義線程)都執行完畢,連main線程也執行完畢,那麼jvm就會退出(即中止運行)——此時,連jvm都中止運行了,守護線程固然也就中止執行了。
二、再換一種說法,若是有用戶自定義線程存在的話,jvm就不會退出——此時,守護線程也不能退出,也就是它還要運行,幹嗎呢,就是爲了執行垃圾回收的任務啊。

用戶自定義線程
一、應用程序裏的線程,通常都是用戶自定義線程。
二、用戶也能夠在應用程序代碼自定義守護線程,只須要調用Thread類的設置方法設置一下便可。

38.建立線程有哪幾種方式?

39.說一下 runnable 和 callable 有什麼區別?

40.線程有哪些狀態?

41.sleep() 和 wait() 有什麼區別?

42.notify()和 notifyAll()有什麼區別?

43.線程的 run()和 start()有什麼區別?

44.建立線程池有哪幾種方式?

45.線程池都有哪些狀態?

46.線程池中 submit()和 execute()方法有什麼區別?

47.在 java 程序中怎麼保證多線程的運行安全?

48.多線程鎖的升級原理是什麼?

49.什麼是死鎖?

50.怎麼防止死鎖?

51.ThreadLocal 是什麼?有哪些使用場景?

52.說一下 synchronized 底層實現原理?

53.synchronized 和 volatile 的區別是什麼?

54.synchronized 和 Lock 有什麼區別?

55.synchronized 和 ReentrantLock 區別是什麼?

56.說一下 atomic 的原理?

4、反射

57.什麼是反射?

58.什麼是 java 序列化?什麼狀況下須要序列化?

59.動態代理是什麼?有哪些應用?

60.怎麼實現動態代理?

5、對象拷貝

61.爲何要使用克隆?

62.如何實現對象克隆?

63.深拷貝和淺拷貝區別是什麼?

6、Java Web

64.jsp 和 servlet 有什麼區別?

65.jsp 有哪些內置對象?做用分別是什麼?

66.說一下 jsp 的 4 種做用域?

67.session 和 cookie 有什麼區別?

68.說一下 session 的工做原理?

69.若是客戶端禁止 cookie 能實現 session 還能用嗎?

70.spring mvc 和 struts 的區別是什麼?

71.如何避免 sql 注入?

72.什麼是 XSS 攻擊,如何避免?

73.什麼是 CSRF 攻擊,如何避免?

7、異常

74.throw 和 throws 的區別?

a.throws出如今方法函數頭;而throw出如今函數體。
b.throws表示出現異常的一種可能性,並不必定會發生這些異常;throw則是拋出了異常,執行throw則必定拋出了某種異常對象。
c.二者都是消極處理異常的方式(這裏的消極並非說這種方式很差),只是拋出或者可能拋出異常,可是不會由函數去處理異常,真正的處理異常由函數的上層調用處理。

75.final、finally、finalize 有什麼區別?

a.final修飾符(關鍵字)。被final修飾的類,就意味着不能再派生出新的子類,不能做爲父類而被子類繼承。所以一個類不能既被abstract聲明,又被final聲明。將變量或方法聲明爲final,能夠保證他們在使用的過程當中不被修改。被聲明爲final的變量必須在聲明時給出變量的初始值,而在之後的引用中只能讀取。被final聲明的方法也一樣只能使用,即不能方法重寫。
b.finally是在異常處理時提供finally塊來執行任何清除操做。無論有沒有異常被拋出、捕獲,finally塊都會被執行。try塊中的內容是在無異常時執行到結束。catch塊中的內容,是在try塊內容發生catch所聲明的異常時,跳轉到catch塊中執行。finally塊則是不管異常是否發生,都會執行finally塊的內容,因此在代碼邏輯中有須要不管發生什麼都必須執行的代碼,就能夠放在finally塊中。
c.finalize是方法名。java技術容許使用finalize()方法在垃圾收集器將對象從內存中清除出去以前作必要的清理工做。這個方法是由垃圾收集器在肯定這個對象沒有被引用時對這個對象調用的。它是在object類中定義的,所以全部的類都繼承了它。子類覆蓋finalize()方法以整理系統資源或者被執行其餘清理工做。finalize()方法是在垃圾收集器刪除對象以前對這個對象調用的。

76.try-catch-finally 中哪一個部分能夠省略?

catch部分能夠省略,也能夠有多個。

77.try-catch-finally 中,若是 catch 中 return 了,finally 還會執行嗎?

會,finally語句塊必定會執行。

78.常見的異常類有哪些?

省略……

8、網絡

79.http 響應碼 301 和 302 表明的是什麼?有什麼區別?

80.forward 和 redirect 的區別?

81.簡述 tcp 和 udp的區別?

82.tcp 爲何要三次握手,兩次不行嗎?爲何?

83.說一下 tcp 粘包是怎麼產生的?

84.OSI 的七層模型都有哪些?

85.get 和 post 請求有哪些區別?

86.如何實現跨域?

87.說一下 JSONP 實現原理?

9、設計模式

88.說一下你熟悉的設計模式?

89.簡單工廠和抽象工廠有什麼區別?

10、Spring/Spring MVC

90.爲何要使用 spring?

91.解釋一下什麼是 aop?

92.解釋一下什麼是 ioc?

93.spring 有哪些主要模塊?

94.spring 經常使用的注入方式有哪些?

95.spring 中的 bean 是線程安全的嗎?

96.spring 支持幾種 bean 的做用域?

97.spring 自動裝配 bean 有哪些方式?

98.spring 事務實現方式有哪些?

99.說一下 spring 的事務隔離?

100.說一下 spring mvc 運行流程?

101.spring mvc 有哪些組件?

102.@RequestMapping 的做用是什麼?

103.@Autowired 的做用是什麼?

11、Spring Boot/Spring Cloud

104.什麼是 spring boot?

105.爲何要用 spring boot?

106.spring boot 核心配置文件是什麼?

107.spring boot 配置文件有哪幾種類型?它們有什麼區別?

108.spring boot 有哪些方式能夠實現熱部署?

109.jpa 和 hibernate 有什麼區別?

110.什麼是 spring cloud?

111.spring cloud 斷路器的做用是什麼?

112.spring cloud 的核心組件有哪些?

12、Hibernate

113.爲何要使用 hibernate?

114.什麼是 ORM 框架?

115.hibernate 中如何在控制檯查看打印的 sql 語句?

116.hibernate 有幾種查詢方式?

117.hibernate 實體類能夠被定義爲 final 嗎?

118.在 hibernate 中使用 Integer 和 int 作映射有什麼區別?

119.hibernate 是如何工做的?

120.get()和 load()的區別?

121.說一下 hibernate 的緩存機制?

122.hibernate 對象有哪些狀態?

123.在 hibernate 中 getCurrentSession 和 openSession 的區別是什麼?

124.hibernate 實體類必需要有無參構造函數嗎?爲何?

十3、Mybatis

125.mybatis 中 #{}和 ${}的區別是什麼?

126.mybatis 有幾種分頁方式?

127.RowBounds 是一次性查詢所有結果嗎?爲何?

128.mybatis 邏輯分頁和物理分頁的區別是什麼?

129.mybatis 是否支持延遲加載?延遲加載的原理是什麼?

130.說一下 mybatis 的一級緩存和二級緩存?

131.mybatis 和 hibernate 的區別有哪些?

132.mybatis 有哪些執行器(Executor)?

133.mybatis 分頁插件的實現原理是什麼?

134.mybatis 如何編寫一個自定義插件?

十4、RabbitMQ

135.rabbitmq 的使用場景有哪些?

136.rabbitmq 有哪些重要的角色?

137.rabbitmq 有哪些重要的組件?

138.rabbitmq 中 vhost 的做用是什麼?

139.rabbitmq 的消息是怎麼發送的?

140.rabbitmq 怎麼保證消息的穩定性?

141.rabbitmq 怎麼避免消息丟失?

142.要保證消息持久化成功的條件有哪些?

143.rabbitmq 持久化有什麼缺點?

144.rabbitmq 有幾種廣播類型?

145.rabbitmq 怎麼實現延遲消息隊列?

146.rabbitmq 集羣有什麼用?

147.rabbitmq 節點的類型有哪些?

148.rabbitmq 集羣搭建須要注意哪些問題?

149.rabbitmq 每一個節點是其餘節點的完整拷貝嗎?爲何?

150.rabbitmq 集羣中惟一一個磁盤節點崩潰了會發生什麼狀況?

151.rabbitmq 對集羣節點中止順序有要求嗎?

十5、Kafka

152.kafka 能夠脫離 zookeeper 單獨使用嗎?爲何?

153.kafka 有幾種數據保留的策略?

154.kafka 同時設置了 7 天和 10G 清除數據,到第五天的時候消息達到了 10G,這個時候 kafka 將如何處理?

155.什麼狀況會致使 kafka 運行變慢?

156.使用 kafka 集羣須要注意什麼?

十6、Zookeeper

157.zookeeper 是什麼?

158.zookeeper 都有哪些功能?

159.zookeeper 有幾種部署模式?

160.zookeeper 怎麼保證主從節點的狀態同步?

161.集羣中爲何要有主節點?

162.集羣中有 3 臺服務器,其中一個節點宕機,這個時候 zookeeper 還可使用嗎?

163.說一下 zookeeper 的通知機制?

十7、MySql

164.數據庫的三範式是什麼?

165.一張自增表裏面總共有 7 條數據,刪除了最後 2 條數據,重啓 mysql 數據庫,又插入了一條數據,此時 id 是幾?

166.如何獲取當前數據庫版本?

167.說一下 ACID 是什麼?

168.char 和 varchar 的區別是什麼?

169.float 和 double 的區別是什麼?

170.mysql 的內鏈接、左鏈接、右鏈接有什麼區別?

171.mysql 索引是怎麼實現的?

172.怎麼驗證 mysql 的索引是否知足需求?

173.說一下數據庫的事務隔離?

174.說一下 mysql 經常使用的引擎?

175.說一下 mysql 的行鎖和表鎖?

176.說一下樂觀鎖和悲觀鎖?

177.mysql 問題排查都有哪些手段?

178.如何作 mysql 的性能優化?

十8、Redis

179.redis 是什麼?都有哪些使用場景?

180.redis 有哪些功能?

181.redis 和 memecache 有什麼區別?

182.redis 爲何是單線程的?

183.什麼是緩存穿透?怎麼解決?

184.redis 支持的數據類型有哪些?

185.redis 支持的 java 客戶端都有哪些?

186.jedis 和 redisson 有哪些區別?

187.怎麼保證緩存和數據庫數據的一致性?

188.redis 持久化有幾種方式?

189.redis 怎麼實現分佈式鎖?

190.redis 分佈式鎖有什麼缺陷?

191.redis 如何作內存優化?

192.redis 淘汰策略有哪些?

193.redis 常見的性能問題有哪些?該如何解決?

十9、JVM

194.說一下 jvm 的主要組成部分?及其做用?

195.說一下 jvm 運行時數據區?

196.說一下堆棧的區別?

197.隊列和棧是什麼?有什麼區別?

198.什麼是雙親委派模型?

199.說一下類加載的執行過程?

200.怎麼判斷對象是否能夠被回收?

201.java 中都有哪些引用類型?

202.說一下 jvm 有哪些垃圾回收算法?

203.說一下 jvm 有哪些垃圾回收器?

204.詳細介紹一下 CMS 垃圾回收器?

205.新生代垃圾回收器和老生代垃圾回收器都有哪些?有什麼區別?

206.簡述分代垃圾回收器是怎麼工做的?

207.說一下 jvm 調優的工具?

208.經常使用的 jvm 調優的參數都有哪些?

相關文章
相關標籤/搜索