久久综合丝袜日本网手机版,日韩欧美中文字幕在线三区,亚洲精品国产品国语在线,极品在线观看视频婷婷

      <small id="aebxz"><menu id="aebxz"></menu></small>
    1. java 基礎(chǔ)面試題

      時(shí)間:2022-07-11 07:13:34 面試 我要投稿
      • 相關(guān)推薦

      java 基礎(chǔ)面試題

      1.一個(gè)".java"源文件中是否可以包括多個(gè)類(不是內(nèi)部類)?有什么限制?

      java 基礎(chǔ)面試題

      可以有多個(gè)類,但只能有一個(gè)public的類,并且public的類名必須與文件名相一致。

      2.&和&&的區(qū)別。

      &和&&都可以用作邏輯與的運(yùn)算符,表示邏輯與(and),當(dāng)運(yùn)算符兩邊的表達(dá)式的結(jié)果都為true時(shí),整個(gè)運(yùn)算結(jié)果才為true,否則,只要有一方為false,則結(jié)果為false。

      &&還具有短路的功能,即如果第一個(gè)表達(dá)式為false,則不再計(jì)算第二個(gè)表達(dá)式,例如,對于if(str != null && !str.equals(“”))表達(dá)式,當(dāng)str為null時(shí),后面的表達(dá)式不會(huì)執(zhí)行,所以不會(huì)出現(xiàn)NullPointerException如果將&&改為&,則會(huì)拋出NullPointerException異常。If(x==33 & ++y>0) y會(huì)增長,If(x==33&& ++y>0)不會(huì)增長

      &還可以用作位運(yùn)算符,當(dāng)&操作符兩邊的表達(dá)式不是boolean類型時(shí),&表示按位與操作,我們通常使用0x0f來與一個(gè)整數(shù)進(jìn)行&運(yùn)算,來獲取該整數(shù)的最低4個(gè)bit位,例如,0x31 &0x0f的結(jié)果為0x01。

      3.在JAVA中,如何跳出當(dāng)前的多重嵌套循環(huán)?

      在Java中,要想跳出多重循環(huán),可以在外面的循環(huán)語句前定義一個(gè)標(biāo)號,然后在里層循環(huán)體的代碼中使用帶有標(biāo)號的break 語句,即可跳出外層循環(huán)。例如,

      ok:

      for(int i=0;i<10;i++)< p="">

      {

      for(int j=0;j<10;j++)< p="">

      {

      System.out.println(“i=” + i + “,j=” + j);

      if(j == 5) break ok;

      }

      }

      另外,我個(gè)人通常并不使用標(biāo)號這種方式,而是讓外層的循環(huán)條件表達(dá)式的結(jié)果可以受到里層循環(huán)體代碼的控制,例如,要在二維數(shù)組中查找到某個(gè)數(shù)字。

      booleanfound = false;

      for(inti=0;i<10 && !found;i++)

      {

      for(int j=0;j<10;j++)< p="">

      {

      System.out.println(“i=” + i + “,j=” + j);

      if(j == 5)

      {

      found = true;

      break;

      }

      }

      }

      4.switch是否能作用在byte上,是否能作用在long上,是否能作用在String上?

      在switch(expr1)中,expr1只能是一個(gè)整數(shù)表達(dá)式或者枚舉常量(更大字體),整數(shù)表達(dá)式可以是int基本類型或Integer包裝類型,由于,byte,short,char都可以隱含轉(zhuǎn)換為int,所以,這些類型以及這些類型的包裝類型也是可以的。顯然,long和String類型都不符合sitch的語法規(guī)定,并且不能被隱式轉(zhuǎn)換成int類型,所以,它們不能作用于swtich語句中。

      JDK1.7版本能使用String

      5.short s1 = 1; s1 = s1 + 1;有什么錯(cuò)? short s1 = 1; s1 += 1;有什么錯(cuò)?

      對于short s1 = 1; s1 = s1 + 1; 由于s1+1運(yùn)算時(shí)會(huì)自動(dòng)提升表達(dá)式的類型,所以結(jié)果是int型,再賦值給short類型s1時(shí),編譯器將報(bào)告需要強(qiáng)制轉(zhuǎn)換類型的錯(cuò)誤。

      對于short s1 = 1; s1 += 1;由于 += 是java語言規(guī)定的運(yùn)算符,java編譯器會(huì)對它進(jìn)行特殊處理,因此可以正確編譯。

      6.垃圾回收器的基本原理是什么?垃圾回收器可以馬上回收內(nèi)存嗎?有什么辦法主動(dòng)通知虛擬機(jī)進(jìn)行垃圾回收?

      對于GC來說,當(dāng)程序員創(chuàng)建對象時(shí),GC就開始監(jiān)控這個(gè)對象的地址、大小以及使用情況。通常,GC采用有向圖的方式記錄和管理堆(heap)中的所有對象。通過這種方式確定哪些對象是"可達(dá)的",哪些對象是"不可達(dá)的"。當(dāng)GC確定一些對象為"不可達(dá)"時(shí),GC就有責(zé)任回收這些內(nèi)存空間?梢浴3绦騿T可以手動(dòng)執(zhí)行System.gc(),通知GC運(yùn)行,但是Java語言規(guī)范并不保證GC一定會(huì)執(zhí)行。

      7.GC是什么? 為什么要有GC?

      GC是垃圾收集的意思(Gabage Collection),內(nèi)存處理是編程人員容易出現(xiàn)問題的地方,忘記或者錯(cuò)誤的內(nèi)存回收會(huì)導(dǎo)致程序或系統(tǒng)的不穩(wěn)定甚至崩潰,Java提供的GC功能可以自動(dòng)監(jiān)測對象是否超過作用域從而達(dá)到自動(dòng)回收內(nèi)存的目的,Java語言沒有提供釋放已分配內(nèi)存的顯示操作方法。

      【java 基礎(chǔ)面試題】相關(guān)文章:

      Java實(shí)習(xí)報(bào)告09-20

      c面試題08-04

      java簡歷的自我評價(jià)11-08

      java實(shí)習(xí)報(bào)告模板11-08

      java自我介紹12-06

      java實(shí)訓(xùn)總結(jié)11-18

      java實(shí)訓(xùn)報(bào)告04-15

      java轉(zhuǎn)正申請書07-02

      java面試自我介紹05-06

      Java實(shí)習(xí)報(bào)告(15篇)03-04