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

專注Java教育14年 全國咨詢/投訴熱線:400-8080-105
動(dòng)力節(jié)點(diǎn)LOGO圖
始于2009,口口相傳的Java黃埔軍校
首頁 學(xué)習(xí)攻略 Java學(xué)習(xí) Java基礎(chǔ)知識(shí)題庫

Java基礎(chǔ)知識(shí)題庫

更新時(shí)間:2022-05-09 11:20:46 來源:動(dòng)力節(jié)點(diǎn) 瀏覽1769次

1.列出Java 編程語言的特點(diǎn)。

Java 編程語言有以下特點(diǎn)。

簡單: Java 很容易學(xué)習(xí)。Java 的語法基于 C++,這使得在其中編寫程序更容易。

面向?qū)ο螅?Java 遵循面向?qū)ο蟮姆妒剑试S我們將代碼維護(hù)為包含數(shù)據(jù)和行為的不同類型對(duì)象的組合。

可移植性: Java 支持隨處讀取一次寫入的方法。我們可以在每臺(tái)機(jī)器上執(zhí)行 Java 程序。Java 程序 (.java) 被轉(zhuǎn)換為可以在每臺(tái)機(jī)器上輕松運(yùn)行的字節(jié)碼 (.class)。

平臺(tái)無關(guān): Java 是一種平臺(tái)無關(guān)的編程語言。它不同于需要平臺(tái)執(zhí)行的其他編程語言,如 C 和 C++。Java 帶有執(zhí)行其代碼的平臺(tái)。Java 不依賴于要執(zhí)行的操作系統(tǒng)。

安全: Java 是安全的,因?yàn)樗皇褂蔑@式指針。Java 還提供了字節(jié)碼和異常處理的概念,使其更加安全。

健壯: Java 是一種強(qiáng)大的編程語言,因?yàn)樗褂脧?qiáng)大的內(nèi)存管理。自動(dòng)垃圾收集、異常處理等概念使其更加健壯。

架構(gòu)中立: Java 是架構(gòu)中立的,因?yàn)樗灰蕾囉诩軜?gòu)。在 C 中,數(shù)據(jù)類型的大小可能會(huì)根據(jù) Java 中不存在的體系結(jié)構(gòu)(32 位或 64 位)而有所不同。

解釋: Java 使用即時(shí) (JIT) 解釋器和編譯器來執(zhí)行程序。

高性能: Java 比其他傳統(tǒng)的解釋型編程語言更快,因?yàn)?Java 字節(jié)碼“接近”本機(jī)代碼。它仍然比編譯語言(例如,C++)慢一點(diǎn)。

多線程:我們可以通過定義多個(gè)線程來編寫一次處理多個(gè)任務(wù)的 Java 程序。多線程的主要優(yōu)點(diǎn)是它不會(huì)為每個(gè)線程占用內(nèi)存。它共享一個(gè)公共內(nèi)存區(qū)域。線程對(duì)于多媒體、Web 應(yīng)用程序等很重要。

分布式: Java是分布式的,因?yàn)樗奖阌脩粲肑ava創(chuàng)建分布式應(yīng)用程序。RMI 和 EJB 用于創(chuàng)建分布式應(yīng)用程序。Java 的這一特性使我們能夠通過從 Internet 上的任何機(jī)器調(diào)用方法來訪問文件。

動(dòng)態(tài): Java 是一種動(dòng)態(tài)語言。它支持類的動(dòng)態(tài)加載。這意味著類是按需加載的。它還支持來自其本地語言(即 C 和 C++)的函數(shù)。

2.你對(duì)Java虛擬機(jī)的理解是什么?

Java 虛擬機(jī)是使計(jì)算機(jī)能夠運(yùn)行Java程序的虛擬機(jī)。JVM 就像一個(gè)運(yùn)行時(shí)引擎,它調(diào)用 Java 代碼中的 main 方法。JVM是必須在計(jì)算機(jī)系統(tǒng)中實(shí)現(xiàn)的規(guī)范。Java 代碼由 JVM 編譯為與機(jī)器無關(guān)且接近本機(jī)代碼的字節(jié)碼。

3.JVM分配了多少種內(nèi)存區(qū)域?

多種類型:

類(方法)區(qū):類區(qū)存儲(chǔ)每個(gè)類的結(jié)構(gòu),例如運(yùn)行時(shí)常量池、字段、方法數(shù)據(jù)和方法代碼。

堆:它是運(yùn)行時(shí)數(shù)據(jù)區(qū),內(nèi)存被分配給對(duì)象

Stack: Java Stack 存儲(chǔ)幀。它保存局部變量和部分結(jié)果,并在方法調(diào)用和返回中發(fā)揮作用。每個(gè)線程都有一個(gè)私有 JVM 堆棧,與線程同時(shí)創(chuàng)建。每次調(diào)用方法時(shí)都會(huì)創(chuàng)建一個(gè)新框架。框架在其方法調(diào)用完成時(shí)被銷毀。

程序計(jì)數(shù)器寄存器: PC(程序計(jì)數(shù)器)寄存器包含當(dāng)前正在執(zhí)行的Java虛擬機(jī)指令的地址。

本機(jī)方法堆棧:它包含應(yīng)用程序中使用的所有本機(jī)方法。

4.Java 平臺(tái)與其他平臺(tái)的主要區(qū)別是什么?

Java平臺(tái)與其他平臺(tái)有以下區(qū)別。

Java 是基于軟件的平臺(tái),而其他平臺(tái)可能是硬件平臺(tái)或基于軟件的平臺(tái)。

Java 在其他硬件平臺(tái)之上執(zhí)行,而其他平臺(tái)只能有硬件組件。

5.什么是類加載器?

Classloader 是 JVM 的一個(gè)子系統(tǒng),用于加載類文件。每當(dāng)我們運(yùn)行 java 程序時(shí),它首先由類加載器加載。Java中有三個(gè)內(nèi)置的類加載器。

Bootstrap ClassLoader:這是第一個(gè)類加載器,它是 Extension 類加載器的超類。它加載包含Java標(biāo)準(zhǔn)版所有類文件的rt.jar文件,如java.lang包類、java.net包類、java.util包類、java.io包類、java.sql包類等。

Extension ClassLoader:這是 Bootstrap 的子類加載器和 System 類加載器的父類加載器。它加載位于$JAVA_HOME/jre/lib/ext目錄中的 jar 文件。

System/Application ClassLoader:這是擴(kuò)展類加載器的子類加載器。它從類路徑加載類文件。默認(rèn)情況下,類路徑設(shè)置為當(dāng)前目錄。您可以使用“-cp”或“-classpath”開關(guān)更改類路徑。它也被稱為應(yīng)用程序類加載器。

6.Java中的各種訪問說明符是什么?

在 Java 中,訪問說明符是用于定義方法、類或變量的訪問范圍的關(guān)鍵字。在 Java 中,下面給出了四個(gè)訪問說明符。

公共定義為公共的類、方法或變量可以被任何類或方法訪問。

Protected Protected 可以被同一個(gè)包的類訪問,也可以被這個(gè)類的子類訪問,也可以在同一個(gè)類內(nèi)訪問。

Default Default 只能在包中訪問。默認(rèn)情況下,所有類、方法和變量都具有默認(rèn)范圍。

Private定義為私有的私有類、方法或變量只能在該類中訪問。

7.靜態(tài)方法和變量的目的是什么?

定義為靜態(tài)的方法或變量在類的所有對(duì)象之間共享。靜態(tài)是類的一部分,而不是對(duì)象的一部分。靜態(tài)變量存儲(chǔ)在類區(qū)域中,我們不需要?jiǎng)?chuàng)建對(duì)象來訪問這些變量。因此,在需要定義類的所有對(duì)象共有的變量或方法的情況下使用靜態(tài)。

例如,在模擬學(xué)院學(xué)生集合的類中,學(xué)院名稱是所有學(xué)生的共同屬性。因此,學(xué)院名稱將被定義為static。

8.Java 中的包有什么優(yōu)點(diǎn)?

在 Java 中定義包有很多優(yōu)點(diǎn)。

包避免了名稱沖突。

包提供更容易的訪問控制。

我們還可以擁有在外部不可見并由包使用的隱藏類。

更容易找到相關(guān)的類。

9.什么是面向?qū)ο蠓妒?

它是一種基于對(duì)象的編程范式,對(duì)象具有在其所屬的類中定義的數(shù)據(jù)和方法。面向?qū)ο蠓妒街荚诮Y(jié)合模塊化和可重用性的優(yōu)點(diǎn)。對(duì)象是類的實(shí)例,它們相互交互以設(shè)計(jì)應(yīng)用程序和程序。面向?qū)ο蠓妒接幸韵绿攸c(diǎn)。

在程序設(shè)計(jì)中遵循自下而上的方法。

使用對(duì)對(duì)象數(shù)據(jù)進(jìn)行操作的方法來關(guān)注數(shù)據(jù)

包括像封裝和抽象這樣的概念,它向用戶隱藏復(fù)雜性并僅顯示功能。

實(shí)現(xiàn)實(shí)時(shí)方法,如繼承、抽象等。

面向?qū)ο蠓妒降氖纠?C++、Simula、Smalltalk、Python、C# 等。

10.什么是對(duì)象?

對(duì)象是具有某種狀態(tài)和行為的實(shí)時(shí)實(shí)體。在 Java 中,Object 是類的實(shí)例,實(shí)例變量作為對(duì)象的狀態(tài),方法作為對(duì)象的行為。可以使用new關(guān)鍵字創(chuàng)建類的對(duì)象。

11.什么是構(gòu)造函數(shù)?

構(gòu)造函數(shù)可以定義為用于初始化對(duì)象狀態(tài)的特殊類型的方法。當(dāng)類被實(shí)例化時(shí)調(diào)用它,并為對(duì)象分配內(nèi)存。每次使用new關(guān)鍵字創(chuàng)建對(duì)象時(shí),都會(huì)調(diào)用該類的默認(rèn)構(gòu)造函數(shù)。構(gòu)造函數(shù)的名稱必須與類名相似。構(gòu)造函數(shù)不能有明確的返回類型。

12.什么是靜態(tài)方法?

靜態(tài)方法屬于類而不是對(duì)象。

無需創(chuàng)建對(duì)象即可調(diào)用靜態(tài)方法。

靜態(tài)方法可以訪問和更改靜態(tài)變量的值。

13.應(yīng)用于 Java 靜態(tài)方法的限制是什么?

靜態(tài)方法有兩個(gè)主要限制。

靜態(tài)方法不能使用非靜態(tài)數(shù)據(jù)成員或直接調(diào)用非靜態(tài)方法。

this 和 super 不能在靜態(tài)上下文中使用,因?yàn)樗鼈兪欠庆o態(tài)的。

14.為什么 main 方法是靜態(tài)的?

因?yàn)閷?duì)象不需要調(diào)用靜態(tài)方法。如果我們將 main 方法設(shè)為非靜態(tài),JVM 將不得不先創(chuàng)建它的對(duì)象,然后調(diào)用 main() 方法,這將導(dǎo)致額外的內(nèi)存分配。

15.我們可以將構(gòu)造函數(shù)設(shè)為靜態(tài)嗎?

正如我們所知,靜態(tài)上下文(方法、塊或變量)屬于類,而不是對(duì)象。由于僅在創(chuàng)建對(duì)象時(shí)才調(diào)用構(gòu)造函數(shù),因此將構(gòu)造函數(shù)設(shè)為靜態(tài)是沒有意義的。但是,如果您嘗試這樣做,編譯器將顯示編譯器錯(cuò)誤。

16.我們可以在 Java 中使抽象方法成為靜態(tài)的嗎?

在Java中,如果我們將抽象方法設(shè)為靜態(tài),它將成為類的一部分,我們可以直接調(diào)用它,這是不必要的。調(diào)用未定義的方法是完全沒有用的,因此是不允許的。

17.這個(gè)關(guān)鍵字的主要用途是什么?

此關(guān)鍵字有以下用途。

this可用于引用當(dāng)前類實(shí)例變量。

this可用于調(diào)用當(dāng)前類方法(隱式)

this()可用于調(diào)用當(dāng)前類的構(gòu)造函數(shù)。

這可以作為方法調(diào)用中的參數(shù)傳遞。

this可以在構(gòu)造函數(shù)調(diào)用中作為參數(shù)傳遞。

this可用于從方法返回當(dāng)前類實(shí)例。

18.為什么在 Java 中使用繼承?

下面給出了在 Java 中使用繼承的各種優(yōu)點(diǎn)。

繼承提供代碼可重用性。派生類不需要重新定義基類的方法,除非它需要提供方法的具體實(shí)現(xiàn)。

不使用繼承就無法實(shí)現(xiàn)運(yùn)行時(shí)多態(tài)性。

我們可以使用實(shí)時(shí)對(duì)象模擬類的繼承,這使得 OOP 更加真實(shí)。

繼承提供數(shù)據(jù)隱藏。基類可以通過將其設(shè)為私有來隱藏派生類的一些數(shù)據(jù)。

沒有繼承就無法實(shí)現(xiàn)方法覆蓋。通過方法覆蓋,我們可以給出基類包含的一些基本方法的具體實(shí)現(xiàn)。

19.super 關(guān)鍵字的主要用途是什么?

super關(guān)鍵字有以下用途。

super 可用于引用直接父類實(shí)例變量。

super 可用于調(diào)用直接父類方法。

super() 可用于調(diào)用直接父類構(gòu)造函數(shù)。

20.this 和 super 關(guān)鍵字有什么區(qū)別?

this 和 super 關(guān)鍵字有以下區(qū)別。

super 關(guān)鍵字始終指向父類上下文,而 this 關(guān)鍵字始終指向當(dāng)前類上下文。

super 關(guān)鍵字主要用于在派生類構(gòu)造函數(shù)中初始化基類變量,而 this 關(guān)鍵字主要用于在傳入類構(gòu)造函數(shù)時(shí)區(qū)分局部變量和實(shí)例變量。

super 和 this 必須是構(gòu)造函數(shù)中的第一條語句,否則編譯器會(huì)拋出錯(cuò)誤。

提交申請(qǐng)后,顧問老師會(huì)電話與您溝通安排學(xué)習(xí)

免費(fèi)課程推薦 >>
技術(shù)文檔推薦 >>
主站蜘蛛池模板: 国产精品免费看香蕉 | 色老头xxxxbbbb视频 | 久久一二 | 99久久国产亚洲综合精品 | 成人激情免费视频 | 亚洲综合国产一区在线 | 国产精品天天操 | 深夜影院在线观看 | 看全色黄大色黄大片爽一下 | 91九色视频在线观看 | 国产福利99 | 欧美伦理一区 | 精品黑人一区二区三区 | 真人一级毛片免费观看视频 | 国产精品午夜免费福利视频 | 日本一二三区免费 | 中文字幕在线精品 | 欧美性生活视频免费 | 欧美在线播放成人免费 | 欧美国产亚洲精品高清不卡 | 手机看片神马午夜片 | 国产视频久久久久 | 综合伊人久久在一二三区 | 国产探花一区 | 亚洲欧美日韩中文高清一 | 鲁丝一区二区三区不属 | 久热精品视频在线播放 | 热99re久久精品天堂vr | 亚洲成av人片天堂网 | 欧美成人禁片在线观看网址 | 热久久精品免费视频 | 免费一级毛片麻豆精品 | 九九热免费在线观看 | 美女色片| 伊人成影院九九 | 操一操日一日 | 影视先锋av资源噜噜 | 天天做天天欢天天爽 | jizzz亚洲美女 | 午夜在线不卡 | 成人毛片免费观看视频在线 |