Java類加載器包括幾種以及它們之間的關系是怎樣的-創(chuàng)新互聯(lián)

這篇文章主要講解了“ Java類加載器包括幾種以及它們之間的關系是怎樣的”,文中的講解內(nèi)容簡單清晰,易于學習與理解,下面請大家跟著小編的思路慢慢深入,一起來研究和學習“ Java類加載器包括幾種以及它們之間的關系是怎樣的”吧!

成都創(chuàng)新互聯(lián)公司從2013年開始,先為花垣等服務建站,花垣等地企業(yè),進行企業(yè)商務咨詢服務。為花垣企業(yè)網(wǎng)站制作PC+手機+微官網(wǎng)三網(wǎng)同步一站式服務解決您的所有建站問題。

1. 為什么說Java是一門平臺無關語言?

平臺無關實際的含義是“一次編寫到處運行”。Java 能夠做到是因為它的字節(jié)碼(byte code)可以運行在任何操作系統(tǒng)上,與底層系統(tǒng)無關。

2. 為什么 Java 不是100%面向?qū)ο螅?/p>

Java 不是100%面向?qū)ο?,因為它包?個原始數(shù)據(jù)類型,例如 boolean、byte、char、int、float、double、long、short。它們不是對象。

3. 什么是 singleton class,如何創(chuàng)建一個 singleton class?

Singleton class 在任何時間同一個 JVM 中只有一個實例。可以把構造函數(shù)加 private 修飾符創(chuàng)建 singleton。

4. 什么是多態(tài)?

多態(tài)簡單地說“一個接口,多種實現(xiàn)”。多態(tài)的出現(xiàn)使得在不同的場合同一個接口能夠提供不同功能,具體地說可以讓變量、函數(shù)或者對象能夠提供多種功能。下面是多態(tài)的兩種類型:

  1. 編譯時多態(tài)

  2. 運行時多態(tài)

編譯時多態(tài)主要是對方法進行重載(overload),而運行時多態(tài)主要通過使用繼承或者實現(xiàn)接口。

什么是運行時多態(tài),也稱動態(tài)方法分配?

在 Java 中,運行時多態(tài)或動態(tài)方法分配是一種在運行過程中的方法重載。在這個過程中,通過調(diào)用父類的變量引用被重載的方法。下面是一個例子:

Java類加載器包括幾種以及它們之間的關系是怎樣的

5. Java類加載器包括幾種?它們之間的關系是怎么樣的?

Java 類加載器有:

  • 引導類加載器(bootstrap class loader):只加載 JVM 自身需要的類,包名為 java、javax、sun 等開頭。

  • 擴展類加載器(extensions class loader):加載 JAVA_HOME/lib/ext 目錄下或者由系統(tǒng)變量 -Djava.ext.dir 指定位路徑中的類庫。

  • 應用程序類加載器(application class loader):加載系統(tǒng)類路徑 java -classpath 或 -Djava.class.path 下的類庫。

  • 自定義類加載器(java.lang.classloder):繼承 java.lang.ClassLoader 的自定義類加載器。

注意:-Djava.ext.dirs 會覆蓋 Java 本身的 ext 設置,造成 JDK 內(nèi)建功能無法使用??梢韵裣旅孢@樣指定參數(shù):

Java類加載器包括幾種以及它們之間的關系是怎樣的

它們的關系如下:

  • 啟動類加載器,C++實現(xiàn),沒有父類。

  • 擴展類加載器(ExtClassLoader),Java 實現(xiàn),父類加載器為 null。

  • 應用程序類加載器(AppClassLoader),Java 實現(xiàn),父類加載器為 ExtClassLoader 。

  • 自定義類加載器,父類加載器為AppClassLoader。

  • Java學習交流圈:834962734 ,進群可免費獲取一份Java架構進階技術精品視頻。(高并發(fā)+Spring源碼+JVM原理解析+分布式架構+微服務架構+多線程并發(fā)原理+BATJ面試寶典)

6. 什么是JDBC驅(qū)動?

JDBC Driver 是一種實現(xiàn) Java 應用與數(shù)據(jù)庫交互的軟件。JDBC 驅(qū)動有下面4種:

  1. JDBC-ODBC bridge 驅(qū)動

  2. Native-API 驅(qū)動(部分是 Java 驅(qū)動)

  3. 網(wǎng)絡協(xié)議驅(qū)動(全部是 Java 驅(qū)動)

  4. Thin driver(全部是 Java 驅(qū)動)

7. 使用 Java 連接數(shù)據(jù)庫有哪幾步?

  • 注冊驅(qū)動類

  • 新建數(shù)據(jù)庫連接

  • 新建語句(statement)

  • 查詢

  • 關閉連接

8. 列舉Spring配置中常用的重要注解。

下面是一些重要的注解:

  • @Required

  • @Autowired

  • @Qualifier

  • @Resource

  • @PostConstruct

  • @PreDestroy

9. Spring中的Bean是什么?列舉Spring Bean的不同作用域。

Bean 是 Spring 應用的骨架。它們由 Spring IoC 容器管理。換句話說,Bean 是一個由 Spring IoC 容器初始化、裝配和管理的對象。

下面是 Spring Bean 的5種作用域:

  • Singleton:每個容器只創(chuàng)建一個實例,也是 Spring Bean 的默認配置。由于非線程安全,因此確保使用時不要在 Bean 中共享實例變量,一面出現(xiàn)數(shù)據(jù)不一致。

  • Prototype:每次請求時創(chuàng)建一個新實例。

  • Request:與 prototype 相同,區(qū)別在于只針對 Web 應用。每次 HTTP 請求時創(chuàng)建一個新實例。

  • Session:每次收到 HTTP 會話請求時由容器創(chuàng)建一個新實例。

  • 全局 Session:為每個門戶應用(Portlet App)創(chuàng)建一個全局 Session Bean。

感謝各位的閱讀,以上就是“ Java類加載器包括幾種以及它們之間的關系是怎樣的”的內(nèi)容了,經(jīng)過本文的學習后,相信大家對 Java類加載器包括幾種以及它們之間的關系是怎樣的這一問題有了更深刻的體會,具體使用情況還需要大家實踐驗證。這里是創(chuàng)新互聯(lián),小編將為大家推送更多相關知識點的文章,歡迎關注!

分享名稱:Java類加載器包括幾種以及它們之間的關系是怎樣的-創(chuàng)新互聯(lián)
當前網(wǎng)址:http://muchs.cn/article34/hipse.html

成都網(wǎng)站建設公司_創(chuàng)新互聯(lián),為您提供商城網(wǎng)站微信小程序、網(wǎng)頁設計公司、網(wǎng)站維護、品牌網(wǎng)站制作Google

廣告

聲明:本網(wǎng)站發(fā)布的內(nèi)容(圖片、視頻和文字)以用戶投稿、用戶轉(zhuǎn)載內(nèi)容為主,如果涉及侵權請盡快告知,我們將會在第一時間刪除。文章觀點不代表本網(wǎng)站立場,如需處理請聯(lián)系客服。電話:028-86922220;郵箱:631063699@qq.com。內(nèi)容未經(jīng)允許不得轉(zhuǎn)載,或轉(zhuǎn)載時需注明來源: 創(chuàng)新互聯(lián)

成都做網(wǎng)站