91超碰碰碰碰久久久久久综合_超碰av人澡人澡人澡人澡人掠_国产黄大片在线观看画质优化_txt小说免费全本

溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務條款》

Java的高級面試題有哪些

發布時間:2022-01-05 14:50:48 來源:億速云 閱讀:139 作者:iii 欄目:大數據

這篇文章主要介紹“Java的高級面試題有哪些”,在日常操作中,相信很多人在Java的高級面試題有哪些問題上存在疑惑,小編查閱了各式資料,整理出簡單好用的操作方法,希望對大家解答”Java的高級面試題有哪些”的疑惑有所幫助!接下來,請跟著小編一起來學習吧!

JVM的內存結構

根據 JVM 規范,JVM 內存共分為虛擬機棧、堆、方法區、程序計數器、本地方法棧五個部分。

1、Java虛擬機棧:

線程私有;每個方法在執行的時候會創建一個棧幀,存儲了局部變量表,操作數棧,動態連接,方法返回地址等;每個方法從調用到執行完畢,對應一個棧幀在虛擬機棧中的入棧和出棧。

2、堆:

線程共享;被所有線程共享的一塊內存區域,在虛擬機啟動時創建,用于存放對象實例。

3、方法區:

線程共享;被所有線程共享的一塊內存區域;用于存儲已被虛擬機加載的類信息,常量,靜態變量等。

4、程序計數器:

線程私有;是當前線程所執行的字節碼的行號指示器,每條線程都要有一個獨立的程序計數器,這類內存也稱為“線程私有”的內存。

5、本地方法棧:

線程私有;主要為虛擬機使用到的Native方法服務。

大體回答如上,類似文章請移駕:

JVM的內存區域劃分

JVM知識點梳理

JVM內存分配與回收

JVM內存管理機制


強引用,軟引用和弱引用的區別

強引用:

只有這個引用被釋放之后,對象才會被釋放掉,只要引用存在,垃圾回收器永遠不會回收,這是最常見的New出來的對象。

軟引用:

內存溢出之前通過代碼回收的引用。軟引用主要用戶實現類似緩存的功能,在內存足夠的情況下直接通過軟引用取值,無需從繁忙的真實來源查詢數據,提升速度;當內存不足時,自動刪除這部分緩存數據,從真正的來源查詢這些數據。

弱引用:

第二次垃圾回收時回收的引用,短時間內通過弱引用取對應的數據,可以取到,當執行過第二次垃圾回收時,將返回null。弱引用主要用于監控對象是否已經被垃圾回收器標記為即將回收的垃圾,可以通過弱引用的isEnQueued方法返回對象是否被垃圾回收器標記。


大體回答如上,類似文章請移駕:

Java 如何有效地避免OOM:善于利用軟引用和弱引用


數組在內存中如何分配

1、簡單的值類型的數組,每個數組成員是一個引用(指針),引用到棧上的空間(因為值類型變量的內存分配在棧上)

2、引用類型,類類型的數組,每個數組成員仍是一個引用(指針),引用到堆上的空間(因為類的實例的內存分配在堆上)


用過哪些設計模式,手寫一個(除單例)

設計模式早有總結,看這里:23種設計模式完整總結


springmvc的核心是什么,請求的流程是怎么處理的,控制反轉怎么實現的

核心:

控制反轉和面向切面

請求處理流程:

1、首先用戶發送請求到前端控制器,前端控制器根據請求信息(如URL)來決定選擇哪一個頁面控制器進行處理并把請求委托給它,即以前的控制器的控制邏輯部分;

2、頁面控制器接收到請求后,進行功能處理,首先需要收集和綁定請求參數到一個對象,并進行驗證,然后將命令對象委托給業務對象進行處理;處理完畢后返回一個ModelAndView(模型數據和邏輯視圖名);

3、前端控制器收回控制權,然后根據返回的邏輯視圖名,選擇相應的視圖進行渲染,并把模型數據傳入以便視圖渲染;

4、前端控制器再次收回控制權,將響應返回給用戶。

控制反轉如何實現:

我們每次使用spring框架都要配置xml文件,這個xml配置了bean的id和class。

spring中默認的bean為單實例模式,通過bean的class引用反射機制可以創建這個實例。

因此,spring框架通過反射替我們創建好了實例并且替我們維護他們。

A需要引用B類,spring框架就會通過xml把B實例的引用傳給了A的成員變量。

大體回答如上,類似文章請移駕:

理解Spring中的IOC和AOP


spring里面的aop的原理是什么

這個有介紹,看這里:Spring的IOC原理


mybatis如何處理結果集

MyBatis的結果集是通過反射來實現的。并不是通過get/set方法。在實體類中無論是否定義get/set()方法,都是可以接收到的。

如果面試只是考你這個點的話就恭喜了。如果繼續深問流程,那就需要自己找一些源碼來閱讀了。


java的多態表現在哪里

主要有兩種表現形式:重載和重寫

重載:

是發生在同一類中,具有相同的方法名,主要是看參數的個數,類型,順序不同實現方法的重載的,返回值的類型可以不同。

重寫:

是發生在兩個類中(父類和子類),具有相同的方法名,主要看方法中參數,個數,類型必須相同,返回值的類型必須相同。

到此,關于“Java的高級面試題有哪些”的學習就結束了,希望能夠解決大家的疑惑。理論與實踐的搭配能更好的幫助大家學習,快去試試吧!若想繼續學習更多相關知識,請繼續關注億速云網站,小編會繼續努力為大家帶來更多實用的文章!

向AI問一下細節

免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。

AI

乐亭县| 元氏县| 朔州市| 莲花县| 陈巴尔虎旗| 广河县| 湘阴县| 枣阳市| 凌源市| 九龙县| 克山县| 买车| 虞城县| 资阳市| 许昌市| 乌恰县| 随州市| 壤塘县| 奇台县| 新民市| 诸暨市| 连城县| 洞口县| 弥渡县| 西乡县| 左云县| 饶阳县| 娄烦县| 峨山| 萨嘎县| 大英县| 永州市| 团风县| 兴和县| 额敏县| 博罗县| 巴林左旗| 达孜县| 调兵山市| 新河县| 钦州市|