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

專注Java教育14年 全國咨詢/投訴熱線:400-8080-105
動力節(jié)點(diǎn)LOGO圖
始于2009,口口相傳的Java黃埔軍校
首頁 學(xué)習(xí)攻略 Java學(xué)習(xí) 2022年初級Java面試題

2022年初級Java面試題

更新時間:2022-08-19 09:18:05 來源:動力節(jié)點(diǎn) 瀏覽1404次

1.為什么Java是平臺無關(guān)的語言?

Java 語言的開發(fā)方式使其不依賴于任何硬件或軟件,因?yàn)榫幾g器會編譯代碼,然后將其轉(zhuǎn)換為可以在多個系統(tǒng)上運(yùn)行的與平臺無關(guān)的字節(jié)碼。

運(yùn)行該字節(jié)碼的唯一條件是機(jī)器安裝了運(yùn)行時環(huán)境 (JRE)

2.為什么Java不是純粹的面向?qū)ο笳Z言?

Java 支持原始數(shù)據(jù)類型 - byte、boolean、char、short、int、float、long 和 double,因此它不是純面向?qū)ο蟮恼Z言。

3. java中堆內(nèi)存和棧內(nèi)存的區(qū)別。以及java如何利用它。

堆棧內(nèi)存是分配給每個單獨(dú)程序的內(nèi)存部分。它是固定的。另一方面,堆內(nèi)存是未分配給 java 程序的部分,但在需要時可供 java 程序使用,主要是在程序運(yùn)行時。

Java將此內(nèi)存用作-

當(dāng)我們編寫一個java程序時,所有的變量、方法等都存儲在堆棧內(nèi)存中。

當(dāng)我們在 java 程序中創(chuàng)建任何對象時,該對象就會在堆內(nèi)存中創(chuàng)建。它是從堆棧內(nèi)存中引用的。

示例 -考慮下面的 java 程序:

class Main {
   public void printArray(int[] array){
       for(int i : array)
           System.out.println(i);
   }
   public static void main(String args[]) {
       int[] array = new int[10];
       printArray(array);
   }
}

4. java可以說是完整的面向?qū)ο蟮木幊陶Z言嗎?

如果我們聲稱 java 是完整的面向?qū)ο蟮木幊陶Z言,那并沒有錯。因?yàn)镴ava中的一切都在類之下。我們可以通過創(chuàng)建對象來訪問它。

但是,如果我們說 java 不是一種完全面向?qū)ο蟮木幊陶Z言,因?yàn)樗С衷紨?shù)據(jù)類型,如 int、float、char、boolean、double 等。

現(xiàn)在的問題是:Java 是完全面向?qū)ο蟮木幊陶Z言嗎?我們可以說——Java 不是一種純粹的面向?qū)ο蟮木幊陶Z言,因?yàn)樗梢灾苯釉L問原始數(shù)據(jù)類型。而且這些原始數(shù)據(jù)類型不直接屬于 Integer 類。

5. Java 與 C++ 有何不同?

C++ 只是一種編譯語言,而 Java 既是編譯語言又是解釋語言。

Java 程序與機(jī)器無關(guān),而 c++ 程序只能在編譯它的機(jī)器上運(yùn)行。

C++ 允許用戶在程序中使用指針。而java不允許它。Java 在內(nèi)部使用指針。

C++ 支持多重繼承的概念,而 Java 不支持這一點(diǎn)。正是由于避免了導(dǎo)致鉆石問題的名稱歧義的復(fù)雜性。

6. C/C++中使用指針。為什么Java不使用指針?

指針對于初學(xué)者來說非常復(fù)雜且不安全。Java 專注于代碼的簡單性,而指針的使用可能使其具有挑戰(zhàn)性。指針的使用也可能導(dǎo)致潛在的錯誤。此外,如果使用指針,安全性也會受到影響,因?yàn)橛脩艨梢栽谥羔樀膸椭轮苯釉L問內(nèi)存。

因此,通過在 Java 中不包括指針來提供一定程度的抽象。此外,指針的使用會使垃圾收集過程變得非常緩慢和錯誤。Java 使用引用,因?yàn)檫@些不能被操縱,不像指針。

7. java中變量和實(shí)例的默認(rèn)值是什么?

java中的變量沒有默認(rèn)值。我們需要在使用它之前初始化該值。否則會拋出編譯錯誤(變量可能未初始化)。

但是例如,如果我們創(chuàng)建對象,則默認(rèn)值將由默認(rèn)構(gòu)造函數(shù)根據(jù)數(shù)據(jù)類型進(jìn)行初始化。

如果它是一個引用,那么它將被分配給 null。

如果它是數(shù)字,那么它將分配為 0。

如果它是一個布爾值,那么它將被賦值為 false。等等。

8.Java中如何聲明無限循環(huán)?

無限循環(huán)是那些在沒有任何中斷條件的情況下無限運(yùn)行的循環(huán)。有意識地聲明無限循環(huán)的一些例子是:

使用 For 循環(huán):

for (;;)
{
   // Business logic
   // Any break logic
}

使用 while 循環(huán):

while(true){
   // Business logic
   // Any break logic
}

使用 do-while 循環(huán):

do{
   // Business logic
   // Any break logic
}while(true);

9.簡述構(gòu)造函數(shù)重載的概念

構(gòu)造函數(shù)重載是在同名但構(gòu)造函數(shù)參數(shù)不同的類中創(chuàng)建多個構(gòu)造函數(shù)的過程。根據(jù)參數(shù)的數(shù)量及其對應(yīng)的類型,不同類型的構(gòu)造函數(shù)的區(qū)分由編譯器完成。

class Hospital {
int variable1, variable2;
double variable3;
public Hospital(int doctors, int nurses) {
 variable1 = doctors;
 variable2 = nurses;
}
public Hospital(int doctors) {
 variable1 = doctors;
}
public Hospital(double salaries) {
 variable3 = salaries
}
}

這里定義了三個構(gòu)造函數(shù),但它們根據(jù)參數(shù)類型及其數(shù)量而有所不同。

10.在java中定義復(fù)制構(gòu)造函數(shù)。

Copy Constructor 是當(dāng)我們想將值從同一個類的舊對象初始化到新對象時使用的構(gòu)造函數(shù)。

class InterviewBit{
   String department;
   String service;
   InterviewBit(InterviewBit ib){
       this.departments = ib.departments;
       this.services = ib.services;
   }
}

在這里,我們從構(gòu)造函數(shù)中的舊對象值初始化新對象值。雖然,這也可以在對象克隆的幫助下實(shí)現(xiàn)。

11.一個Java程序中可以同時存在一個try塊和多個catch塊。解釋。

是的,可以存在多個 catch 塊,但特定方法應(yīng)該先于一般方法,因?yàn)橹挥袧M足 catch 條件的第一個 catch 塊被執(zhí)行。給定的代碼說明了相同的情況:

public class MultipleCatch {
public static void main(String args[]) {
 try {
  int n = 1000, x = 0;
  int arr[] = new int[n];
  for (int i = 0; i <= n; i++) {
   arr[i] = i / x;
  }
 }
 catch (ArrayIndexOutOfBoundsException exception) {
  System.out.println("1st block = ArrayIndexOutOfBoundsException");
 }
 catch (ArithmeticException exception) {
  System.out.println("2nd block = ArithmeticException");
 }
 catch (Exception exception) {
  System.out.println("3rd block = Exception");
 }
}
}

在這里,第二個 catch 塊將因?yàn)槌?0 (i / x) 而被執(zhí)行。如果 x 大于 0,則將執(zhí)行第一個 catch 塊,因?yàn)?for 循環(huán)運(yùn)行到 i = n 并且數(shù)組索引直到 n-1。

12.解釋final關(guān)鍵字在變量、方法和類中的使用。

在 Java 中,final 關(guān)鍵字用于定義常量 /final 并表示非訪問修飾符。

最終變量:

當(dāng)一個變量在 Java 中聲明為 final 時,它的值一旦被賦值就不能被修改。

如果任何值尚未分配給該變量,則只能由類的構(gòu)造函數(shù)分配。

最終方法:

聲明為 final 的方法不能被其子類覆蓋。

構(gòu)造函數(shù)不能被標(biāo)記為最終的,因?yàn)闊o論何時繼承一個類,構(gòu)造函數(shù)都不會被繼承。因此,將其標(biāo)記為最終沒有意義。Java拋出編譯錯誤說 -modifier final not allowed here

最后一課:

不能從聲明為 final 的類繼承任何類。但是該最終類可以擴(kuò)展其他類以供其使用。

13.'finally' 塊是否可能不會被執(zhí)行?如果是,請列出案例。

是的。'finally' 塊可能不會被執(zhí)行。這些案例是——

假設(shè)我們在上面的語句中使用System.exit() 。

如果出現(xiàn)堆棧溢出、內(nèi)存訪問錯誤等致命錯誤。

14.以下哪項(xiàng)會產(chǎn)生編譯時錯誤?說出原因。

int[] n1 = 新的 int[0];

布爾[] n2 = 新布爾[-200];

雙[] n3 = 新雙[2241423798];

字符[] ch = 新字符[20];

我們在第 3 行得到一個編譯時錯誤。我們將在第 3 行得到的錯誤是 - integer number too large。這是因?yàn)閿?shù)組需要大小為整數(shù)。Integer 在內(nèi)存中占用 4 個字節(jié)。并且數(shù)字(2241423798)超出了整數(shù)的容量。我們可以聲明的最大數(shù)組大小是 - ( 2147483647 )。

因?yàn)閿?shù)組需要整數(shù)大小,所以沒有一行(1、2 和 4)會給出編譯時錯誤。該程序?qū)⒕幾g良好。但是我們在第 2 行得到了運(yùn)行時異常。異常是 - NegativeArraySizeException。

這里會發(fā)生什么 - 當(dāng) JVM 在運(yùn)行時分配所需的內(nèi)存時,它會發(fā)現(xiàn)大小為負(fù)。并且數(shù)組大小不能為負(fù)數(shù)。所以JVM會拋出異常。

15.HashSet 與 TreeSet 有何不同?

盡管 HashSet 和 TreeSet 都沒有同步并確保不存在重復(fù)項(xiàng),但有一些屬性可以將 HashSet 與 TreeSet 區(qū)分開來。

實(shí)現(xiàn):對于HashSet,哈希表用于無序存儲元素。然而,TreeSet 使用紅黑樹以有序的方式存儲元素。

復(fù)雜性/性能:對于添加、檢索和刪除元素,HashSet 的時間攤銷復(fù)雜度為 O(1)。對于 TreeSet,執(zhí)行相同操作的時間復(fù)雜度稍高一些,等于 O(log n)。總體而言,HashSet 的性能比 TreeSet 更快。

方法: hashCode() 和 equals() 是 HashSet 用于在對象之間進(jìn)行比較的方法。相反,TreeSet 使用 compareTo() 和 compare() 方法來促進(jìn)對象比較。

對象類型:可以借助 HashSet 存儲異構(gòu)和空對象。在 TreeSet 的情況下,插入異構(gòu)對象或空對象時會發(fā)生運(yùn)行時異常。

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

免費(fèi)課程推薦 >>
技術(shù)文檔推薦 >>
主站蜘蛛池模板: 久久国产免费一区 | www.男人的天堂.com | 免费在线观看黄色的网站 | 国产成人精品影院狼色在线 | 久草热视频在线 | 精品久久在线观看 | 亚洲爱v | 特黄女一级毛片 | 婷婷五月在线视频 | 女人l8毛片a一级毛片 | 老子影院午夜伦手机不卡6080 | 欧美成人26uuu欧美毛片 | 国产成人 免费观看 | 亚洲一区二区久久 | 国产精品中文字幕在线观看 | 一级毛片q片| 久久亚洲国产精品五月天婷 | 成人综合网址 | 国产免费久久精品44 | 国产亚洲女人久久久久久 | 韩国日本三级在线观看 | 国产最新在线视频 | 深夜在线网站 | 麻豆国产原创最新在线视频 | 伊人久色 | 中文字幕日韩一区 | 一级午夜| 久久精品天天中文字幕人 | 任我鲁精品视频精品 | 欧美性猛交xxxxx按摩欧美 | 日本中文在线视频 | 色吧久久 | 天天狠狠色噜噜 | 97视频在线播放 | 一本岛高清v不卡免费一三区 | 欧美日韩亚洲精品国产色 | 国产精品资源站 | 亚州免费一级毛片 | 成人a毛片一级 | 天天射网| 国产精品一级片 |