可以自定義java.lang.String麼?

在這裏插入圖片描述

前言

記一次阿里面試的時候的一道面試題,被問到可以自定義java.lang.String這個類,讓你自定義的類加載器進行加載麼?

分析ClassLoader

跟着這個loadClass一路追蹤,首先找到了defineClass
在這裏插入圖片描述
接着我們再看preDefineClass這個方法
在這裏插入圖片描述
下面是preDefineClass方法的源碼
在這裏插入圖片描述
可以看到JVM不允許你這樣做的,會出現java.lang.SecurityException,JVM做了安全檢查的,幾乎也沒有人定義與JDK核心類庫完全限定名的類。

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章