大战熟女丰满人妻av-荡女精品导航-岛国aaaa级午夜福利片-岛国av动作片在线观看-岛国av无码免费无禁网站-岛国大片激情做爰视频

專注Java教育14年 全國咨詢/投訴熱線:400-8080-105
動力節點LOGO圖
始于2009,口口相傳的Java黃埔軍校
首頁 hot資訊 2021年Java常見面試題總結

2021年Java常見面試題總結

更新時間:2021-05-11 16:27:24 來源:動力節點 瀏覽940次

1. 問題:如果A和B對象循環引用,是否可以被GC?

回答:可以,現在的虛擬機基本都是通過可達性分析算法來判斷對象是否存活的,而不是通過簡單的引用計數法來判斷對象是否存活。可達性分析算法使用一系列的“GC Roots”對象(虛擬機棧中引用的對象、靜態屬性引用對象)作為起始點,這些節點向下搜索的路徑稱為引用鏈,當一個對象到GC Roots沒有任何引用鏈連接,則證明對象是不可用的。

2. Java中的內存溢出是如何造成的?

OutOfMemoryError:

(1)PerGern Space程序中使用了大量jar或class,使Java虛擬機裝載類空間不夠。

解決方案:調參XX:PermSize和XX:MaxPermSize、減少jar包,減少類的重復加載

(2)Java Heap Space Java虛擬機創建了太多的對象。

解決方案:調參Xms(初始堆大?。mx(最大堆大?。?、檢查死循環或不必要創建的重復對象

(3)unable to create new native Thread JVM占用了太多內存空間,而在JVM中創建線程還要再操作系統中也創建線程。

解決方案:調整JVM中線程大小。

3. Error、Exception和RuntimeException的區別,作用又是什么?

Error和Exception都是Throwable的子類,RuntimeException是Exception的子類。

Error用于指示合理應用程序不應該試圖捕獲的錯誤。

Exception指出合理的應用程序需要捕獲的條件。分為已檢查異常和未檢查異常。

RuntimeException是未檢查異常,不需要try catch或在方法上聲明,主要子類:NullPointer、Arithmatic、ArrayIndexOutOfBounds、ClassCast。

4. Reader和InputStream區別?

都是抽象類,Reader用于讀取字符流(char或String),InputStream用于讀取字節流(byte數組)。

5. hashCode的作用?

hashCode主要是用于快速查找,如HashMap結構中,用于定位鍵值對的位置。兩個對象相同,則hashCode一定相同,而hashCode相同的對象則不一定相同,就相當于放在同一個框里。

6. HashMap和Hashtable的區別?

線程安全性、null值的key、效率、HashMap(Iterator快速失敗迭代器)、Hashtable(enumerator迭代器)、時間推移HashMap元素位置會變

7. HashMap中是否任何對象都可以做為key,用戶自定義對象做為key有沒有什么要求?

可以、但是要key對象必須是不可變的對象,不然在Entry被插入Map中后,再改變key值,會導致當前key值與hash值不符合,即與數組索引不符,將無法被查找到。

8. 啟動一個線程是用run()還是start()?

多線程有幾種實現同步和并發是如何解決的什么叫守護線程,用什么方法實現守護線程(Thread.setDeamon()的含義)如何停止一個線程?解釋是一下什么是線程安全?舉例說明一個線程不安全的例子。解釋Synchronized關鍵字的作用。當一個線程進入一個對象的一個synchronized方法后,其它線程是否可進入此對象的其它方法?

(1)start

(2)繼承Thread類、實現Runnable接口、使用ExectuorService、Future、Callable實現由返回值的線程。

(3)同步方法、同步代碼塊、鎖

(4)Damon線程、為其他線程的運行提供服務,如GC,Thread。setDeamon(true)。

(5)Thread.stop()不推薦(不會正確釋放資源)、使用中斷來停止線程。

(6)當多個線程訪問一個對象時,如果不用考慮這些線程在運行時環境下的調度和交替執行,也不需要進行額外的同步,或者在調用方進行任何其他的協調操作,調用這個對象的行為都可以獲得正確的結果,那這個對象是線程安全的。

(7)車票被重復賣出。

(8)同步關鍵詞。修飾靜態方法,則以類作為鎖對象,同時只能有一個線程訪問此類同步的靜態方法;修飾普通方法,則以此對象作為鎖對象,同時只能有一個線程訪問此類同步的普通方法;也可以自定義鎖對象同步代碼塊。

(9)synchronized方法不可以進入,非synchronized可以進入。

9. 了解過哪些JDK8的新特性,舉例描述下相應的特性?

(1)lambda表達式:函數式編程,方法引用

(2)Stream API

(3)接口的默認方法

(4)日期時間API的改進,新增DateTimeFormatter方法

10. Servlet的生命周期,Serlvet與CGI的區別?

生命周期:類加載、實例化(構造對象),初始化(init),服務(service),銷毀(destroy)。

CGI:common gateway interface,通用網關接口,Perl語言編寫,每個請求創建一個CGI對象。

Servlet:只需要實例化、初始化一次,多線程。

以上就是動力節點Java培訓機構的小編針對“2021年Java常見面試題總結”的內容進行的回答,希望對大家有所幫助,如有疑問,請在線咨詢,有專業老師隨時為你服務。

提交申請后,顧問老師會電話與您溝通安排學習

免費課程推薦 >>
技術文檔推薦 >>
主站蜘蛛池模板: 久久―日本道色综合久久 | 成年视频免费 | 深夜影院老司机69影院 | 久久久久久国产精品免费 | 蜜桃久久久久久久久久久 | 精品亚洲综合久久中文字幕 | 视频一区在线免费观看 | 国产亚洲一区二区在线观看 | 国产69精品久久久久999小说 | 色天天色综合 | 香蕉视频国产在线观看 | 99久久国产亚洲综合精品 | 午夜网站在线观看免费网址免费 | 天天操天天干天天射 | 夜夜操com| 精品成人一区二区三区免费视频 | 日韩欧美一级毛片视频免费 | 天天曰天天| 国产色资源| 日韩久久久精品中文字幕 | a级片免费在线播放 | 午夜精品久久久久久 | 97在线看片免费福利视频 | 二级毛片在线观看 | 日韩欧美三区 | 日本黄色网址免费 | 久久成人精品视频 | 亚洲精品视频免费在线观看 | 欧美超级碰碰 | 欧美第一页在线观看 | 亚洲精品aⅴ一区二区三区 亚洲精品ccc | 亚洲国产精品激情在线观看 | 男女污污视频在线观看 | 精品国精品国产自在久国产不卡 | 一区二区三区免费视频网站 | 综合国产福利视频在线观看 | 草草草在线观看 | 国产在线不卡视频 | 久久黄色小视频 | 四虎影院最新 | 九九爱精品 |