黄色网址大全免费-黄色网址你懂得-黄色网址你懂的-黄色网址有那些-免费超爽视频-免费大片黄国产在线观看

專注Java教育14年 全國咨詢/投訴熱線:400-8080-105
動力節點LOGO圖
始于2009,口口相傳的Java黃埔軍校
首頁 學習攻略 Java學習 Java基礎知識題庫

Java基礎知識題庫

更新時間:2022-05-09 11:20:46 來源:動力節點 瀏覽1724次

1.列出Java 編程語言的特點。

Java 編程語言有以下特點。

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

面向對象: Java 遵循面向對象的范式,它允許我們將代碼維護為包含數據和行為的不同類型對象的組合。

可移植性: Java 支持隨處讀取一次寫入的方法。我們可以在每臺機器上執行 Java 程序。Java 程序 (.java) 被轉換為可以在每臺機器上輕松運行的字節碼 (.class)。

平臺無關: Java 是一種平臺無關的編程語言。它不同于需要平臺執行的其他編程語言,如 C 和 C++。Java 帶有執行其代碼的平臺。Java 不依賴于要執行的操作系統。

安全: Java 是安全的,因為它不使用顯式指針。Java 還提供了字節碼和異常處理的概念,使其更加安全。

健壯: Java 是一種強大的編程語言,因為它使用強大的內存管理。自動垃圾收集、異常處理等概念使其更加健壯。

架構中立: Java 是架構中立的,因為它不依賴于架構。在 C 中,數據類型的大小可能會根據 Java 中不存在的體系結構(32 位或 64 位)而有所不同。

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

高性能: Java 比其他傳統的解釋型編程語言更快,因為 Java 字節碼“接近”本機代碼。它仍然比編譯語言(例如,C++)慢一點。

多線程:我們可以通過定義多個線程來編寫一次處理多個任務的 Java 程序。多線程的主要優點是它不會為每個線程占用內存。它共享一個公共內存區域。線程對于多媒體、Web 應用程序等很重要。

分布式: Java是分布式的,因為它方便用戶用Java創建分布式應用程序。RMI 和 EJB 用于創建分布式應用程序。Java 的這一特性使我們能夠通過從 Internet 上的任何機器調用方法來訪問文件。

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

2.你對Java虛擬機的理解是什么?

Java 虛擬機是使計算機能夠運行Java程序的虛擬機。JVM 就像一個運行時引擎,它調用 Java 代碼中的 main 方法。JVM是必須在計算機系統中實現的規范。Java 代碼由 JVM 編譯為與機器無關且接近本機代碼的字節碼。

3.JVM分配了多少種內存區域?

多種類型:

類(方法)區:類區存儲每個類的結構,例如運行時常量池、字段、方法數據和方法代碼。

堆:它是運行時數據區,內存被分配給對象

Stack: Java Stack 存儲幀。它保存局部變量和部分結果,并在方法調用和返回中發揮作用。每個線程都有一個私有 JVM 堆棧,與線程同時創建。每次調用方法時都會創建一個新框架。框架在其方法調用完成時被銷毀。

程序計數器寄存器: PC(程序計數器)寄存器包含當前正在執行的Java虛擬機指令的地址。

本機方法堆棧:它包含應用程序中使用的所有本機方法。

4.Java 平臺與其他平臺的主要區別是什么?

Java平臺與其他平臺有以下區別。

Java 是基于軟件的平臺,而其他平臺可能是硬件平臺或基于軟件的平臺。

Java 在其他硬件平臺之上執行,而其他平臺只能有硬件組件。

5.什么是類加載器?

Classloader 是 JVM 的一個子系統,用于加載類文件。每當我們運行 java 程序時,它首先由類加載器加載。Java中有三個內置的類加載器。

Bootstrap ClassLoader:這是第一個類加載器,它是 Extension 類加載器的超類。它加載包含Java標準版所有類文件的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:這是擴展類加載器的子類加載器。它從類路徑加載類文件。默認情況下,類路徑設置為當前目錄。您可以使用“-cp”或“-classpath”開關更改類路徑。它也被稱為應用程序類加載器。

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

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

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

Protected Protected 可以被同一個包的類訪問,也可以被這個類的子類訪問,也可以在同一個類內訪問。

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

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

7.靜態方法和變量的目的是什么?

定義為靜態的方法或變量在類的所有對象之間共享。靜態是類的一部分,而不是對象的一部分。靜態變量存儲在類區域中,我們不需要創建對象來訪問這些變量。因此,在需要定義類的所有對象共有的變量或方法的情況下使用靜態。

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

8.Java 中的包有什么優點?

在 Java 中定義包有很多優點。

包避免了名稱沖突。

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

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

更容易找到相關的類。

9.什么是面向對象范式?

它是一種基于對象的編程范式,對象具有在其所屬的類中定義的數據和方法。面向對象范式旨在結合模塊化和可重用性的優點。對象是類的實例,它們相互交互以設計應用程序和程序。面向對象范式有以下特點。

在程序設計中遵循自下而上的方法。

使用對對象數據進行操作的方法來關注數據

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

實現實時方法,如繼承、抽象等。

面向對象范式的示例有 C++、Simula、Smalltalk、Python、C# 等。

10.什么是對象?

對象是具有某種狀態和行為的實時實體。在 Java 中,Object 是類的實例,實例變量作為對象的狀態,方法作為對象的行為。可以使用new關鍵字創建類的對象。

11.什么是構造函數?

構造函數可以定義為用于初始化對象狀態的特殊類型的方法。當類被實例化時調用它,并為對象分配內存。每次使用new關鍵字創建對象時,都會調用該類的默認構造函數。構造函數的名稱必須與類名相似。構造函數不能有明確的返回類型。

12.什么是靜態方法?

靜態方法屬于類而不是對象。

無需創建對象即可調用靜態方法。

靜態方法可以訪問和更改靜態變量的值。

13.應用于 Java 靜態方法的限制是什么?

靜態方法有兩個主要限制。

靜態方法不能使用非靜態數據成員或直接調用非靜態方法。

this 和 super 不能在靜態上下文中使用,因為它們是非靜態的。

14.為什么 main 方法是靜態的?

因為對象不需要調用靜態方法。如果我們將 main 方法設為非靜態,JVM 將不得不先創建它的對象,然后調用 main() 方法,這將導致額外的內存分配。

15.我們可以將構造函數設為靜態嗎?

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

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

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

17.這個關鍵字的主要用途是什么?

此關鍵字有以下用途。

this可用于引用當前類實例變量。

this可用于調用當前類方法(隱式)

this()可用于調用當前類的構造函數。

這可以作為方法調用中的參數傳遞。

this可以在構造函數調用中作為參數傳遞。

this可用于從方法返回當前類實例。

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

下面給出了在 Java 中使用繼承的各種優點。

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

不使用繼承就無法實現運行時多態性。

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

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

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

19.super 關鍵字的主要用途是什么?

super關鍵字有以下用途。

super 可用于引用直接父類實例變量。

super 可用于調用直接父類方法。

super() 可用于調用直接父類構造函數。

20.this 和 super 關鍵字有什么區別?

this 和 super 關鍵字有以下區別。

super 關鍵字始終指向父類上下文,而 this 關鍵字始終指向當前類上下文。

super 關鍵字主要用于在派生類構造函數中初始化基類變量,而 this 關鍵字主要用于在傳入類構造函數時區分局部變量和實例變量。

super 和 this 必須是構造函數中的第一條語句,否則編譯器會拋出錯誤。

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

免費課程推薦 >>
技術文檔推薦 >>
主站蜘蛛池模板: 最近中文字幕完整视频高清1 | 色噜噜狠狠狠狠色综合久 | 欧美日韩一区二区在线观看视频 | 久月婷婷 | 妞干网免费在线 | 亚洲第一免费 | 三级黄色片免费看 | 日日夜夜操美女 | 水果视频在线观看 | 日本三级特黄三级 | 国产成人在线免费观看 | 日韩aⅴ片| 国产精选莉莉私人影院 | 久操手机在线视频 | 操野逼 | 中国国产一级毛片 | 欧美成人高清在线视频大全 | 久久天天躁夜夜躁狠狠85麻豆 | 一级寡妇乱色毛片全场免费 | 亚洲欧美日韩天堂在线观看 | 亚洲精品成人图区 | 第一页在线观看 | 国产高清精品在线 | 在线免费观看视频你懂的 | 伊人久久大香线蕉综合7 | 欧美一区日韩精品 | 男人和女人日皮的视频 | 成人性一级视频在线观看 | 波多一区 | 91精品国产三级在线观看 | 波多野结衣在线视频观看 | 热久久国产 | 午夜私人影院免费体验区 | 一本一道波多野结衣456 | 8x成人永久在线观看视频 | 2020久久国产最新免费观看 | 456亚洲人成影视在线观看 | 成人毛片在线 | 成人a一级毛片免费看 | 国产成人免费全部网站 | 日韩中文字幕精品免费一区 |