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

專注Java教育14年 全國(guó)咨詢/投訴熱線:400-8080-105
動(dòng)力節(jié)點(diǎn)LOGO圖
始于2009,口口相傳的Java黃埔軍校
首頁(yè) 學(xué)習(xí)攻略 Java學(xué)習(xí) java面試常問(wèn)java問(wèn)題及答案

java面試常問(wèn)java問(wèn)題及答案

更新時(shí)間:2019-08-05 17:10:56 來(lái)源:動(dòng)力節(jié)點(diǎn) 瀏覽3013次

  

Java程序員面試是必過(guò)的一關(guān),如果能在面試前做好充足的準(zhǔn)備,就離高薪更近一些,本文是由動(dòng)力節(jié)點(diǎn)java學(xué)院小編總結(jié)的java面試常問(wèn)的java問(wèn)題及答案,大家快來(lái)學(xué)學(xué)吧。


1、數(shù)組有沒(méi)有l(wèi)ength()這個(gè)方法?string有沒(méi)有l(wèi)ength()這個(gè)方法?


數(shù)組無(wú),數(shù)組是成員變量,length.String是成員函數(shù)length();我不知道這個(gè)題意義何在,平時(shí)都用eclipse的,會(huì)在意這個(gè)么...



2、overload和override的區(qū)別。overloaded的方法是否可以改變返回值的類型?


常問(wèn)。


我寫的一篇隨筆詳細(xì)說(shuō)明了重載,重寫和多態(tài)之間的關(guān)系,返回值類型不包含在函數(shù)簽名中,所以只有返回值不同的重載不成立。



  3、set里的元素是不能重復(fù)的,那么用什么方法來(lái)區(qū)分重復(fù)與否呢?是用hashcode()還是equals()?它們有何區(qū)別?


  這個(gè)屬于集合類的查找機(jī)制問(wèn)題,在集合類中,確定兩個(gè)元素是否相同,是用equals方法進(jìn)行比較,hashcode的存在在于可以給元素快速分配一個(gè)index來(lái)存儲(chǔ)。可以將collection看做很多個(gè)大箱子,index是箱子的編號(hào),先將要扔進(jìn)去的物品進(jìn)行hash確定index,扔進(jìn)響應(yīng)箱子,然后再喝箱子里德其它物品equals()來(lái)比較是否相同。


  此外,相等的物品一定具有相同的hashcode,不等的物品不一定。具有相同hashcode的元素不一定相等。不同的hashcode的元素肯定不等。以上規(guī)則可以想象一下相等物品一定要分在同一個(gè)箱子中的情況。



  4、給我一個(gè)你最常見到的runtimeexception。


  如果你這個(gè)答不出來(lái),面試的人會(huì)認(rèn)為你沒(méi)有實(shí)際編程經(jīng)驗(yàn)。


  NullPointerException,空引用異常.說(shuō)實(shí)話,中軟的筆試題就有這個(gè),我連題目意思都理解錯(cuò)了,壓根沒(méi)認(rèn)出來(lái)runtime exception是指運(yùn)行時(shí)異常。



  5、error和exception有什么區(qū)別?


  為什么水的題最容易出現(xiàn)?


  感覺這個(gè)題很水,要說(shuō)C++的話有區(qū)別,感覺JAVA里區(qū)別不大。反正中軟的題目里我就瞎扯了。單純從字面的角度去說(shuō),error就是嚴(yán)重的錯(cuò)誤,像JVM產(chǎn)生的一些錯(cuò)誤等,會(huì)停止程序運(yùn)行或產(chǎn)生錯(cuò)誤結(jié)果。exception是一定程度上可預(yù)見的錯(cuò)誤,可以捕獲以及處理。其實(shí)error也可以捕獲...



  6、list,set,map是否繼承自collection接口?


  Collection的子接口包括BeanContext, BeanContextServices, BlockingQueue, List, Queue, Set,SortedSet.不包括Map


  差點(diǎn)被某網(wǎng)頁(yè)忽悠了,還是JAVA DOC比較專業(yè)。


  7、abstractclass和interface有什么區(qū)別?


       常問(wèn)。


  真的是常問(wèn)...


  抽象類可以有抽象方法和普通方法,也可以有自己的數(shù)據(jù)成員。接口只允許有常量,抽象方法和靜態(tài)類成員。接口可以被多繼承,抽象類不行。接口被實(shí)現(xiàn)時(shí),所有方法必須被重寫。抽象類被繼承時(shí)如果有抽象方法沒(méi)被重寫,則子類也為抽象類。



8、anonymousinnerclass(匿名內(nèi)部類)是否可以extends(繼承)其它類,是否可以implements(實(shí)現(xiàn))interface(接口)?


  不行,對(duì)于匿名內(nèi)部類,看到的一句話說(shuō)的很到位:


  new <類或接口> <類的主體>


  這種形式的new語(yǔ)句聲明一個(gè)新的匿名類,他對(duì)一個(gè)給定的類進(jìn)行擴(kuò)展,或?qū)崿F(xiàn)一個(gè)給定的接口。他還創(chuàng)建那個(gè)類的一個(gè)新實(shí)例,并把他作為語(yǔ)句的結(jié)果而返回。


  這就是匿名類的實(shí)質(zhì),它本身就是一個(gè)類的繼承或一個(gè)接口的實(shí)現(xiàn),所以繼承其它類或借口是無(wú)意義的.在eclipse中冶證實(shí)了我的想法.無(wú)論是繼承其它類還是實(shí)現(xiàn)其它借口都顯示Syntax error on token。



9、abstract的method是否可同時(shí)是static,是否可同時(shí)是native,是否可同時(shí)是synchronized?


  abstact方法需要子類重寫,重寫的概念是就實(shí)例方法而言, 所以不能是static。因?yàn)橥辉颍貙懢筒荒躰ative,抽象方法在抽象類中,無(wú)實(shí)例,不能被調(diào)用,也沒(méi)有內(nèi)容,所以synchronized沒(méi)有意義。abstract方法的修飾符只有private和public。



  10、接口是否可繼承接口?抽象類是否可實(shí)現(xiàn)(implements)接口?抽象類是否可繼承實(shí)體類(concreteclass)?


  接口可以繼承接口,抽象類可以實(shí)現(xiàn)接口,抽象類可以繼承實(shí)體類。換句話說(shuō),抽象類除了不能實(shí)例化以外和普通類沒(méi)什么區(qū)別。



  11、啟動(dòng)一個(gè)線程是用run()還是start()?


  用start(),start()會(huì)通過(guò)調(diào)用run()來(lái)實(shí)現(xiàn)多進(jìn)程。



  12、構(gòu)造器constructor是否可被override?


  構(gòu)造函數(shù)不能被重寫。



  13、兩個(gè)對(duì)象值相同(x.equals(y)true),但卻可有不同的hashcode,這句話對(duì)不對(duì)?


  這句話本身沒(méi)有錯(cuò),equals和hashcode都是Object的方法,都可以覆蓋并由程序員自己決定算法,完全可以做到以上要求,但問(wèn)題是如果是Collection中的元素,這樣做會(huì)帶來(lái)一些錯(cuò)誤,一些不可預(yù)知的錯(cuò)誤,所以在Collection中這樣做是禁止的。



  14、當(dāng)一個(gè)對(duì)象被當(dāng)作參數(shù)傳遞到一個(gè)方法后,此方法可改變這個(gè)對(duì)象的屬性,并可返回變化后的結(jié)果,那么這里到底是值傳遞還是引用傳遞?


  引用傳遞,毫無(wú)疑問(wèn),對(duì)象傳遞只能是引用.你可以換改變引用的內(nèi)容,但并不能改變引用本身。



  15、swtich是否能作用在byte上,是否能作用在long上,是否能作用在string上?


  switch語(yǔ)句中的表達(dá)式只能是整數(shù)類型,即必須是int,char或者枚舉類型數(shù)據(jù)。不能是boolean或浮點(diǎn)型,甚至其他類型的整數(shù)數(shù)據(jù)(byte,short及l(fā)ong)。


  從教材上摘錄而來(lái),應(yīng)該相當(dāng)權(quán)威了。



  16、編程題:寫一個(gè)singleton出來(lái)。


  singleton模式即確保一個(gè)類只有一個(gè)實(shí)例,應(yīng)用級(jí)singleton好像比較復(fù)雜,但最簡(jiǎn)單的singleton還是很好實(shí)現(xiàn)的。



  17、&和&&的區(qū)別。


  這個(gè)問(wèn)得很少。


  &和^,<<,<<<,|同屬于位運(yùn)算符,其中&是按位與,例如,1&1=1,1&0=0,&&是邏輯運(yùn)算符,處理真假值,例如,true&&true=true。


  如果你想學(xué)習(xí)Java可以來(lái)這個(gè)群,首先是二二零,中間是142,最后是906,里面可以學(xué)習(xí)和交流,也有資料可以下載。



  18、hashmap和hashtable的區(qū)別。


  常問(wèn)。


  hashmap可以看做是hashtable的替代者,HashMap的Value和Key都可為NULL,而HashTable不可以,同時(shí),HashTable是線程同步的,而HashMap不是.HashTable用Iterator遍歷,HashMap用Enumeration遍歷。HashTable中hash數(shù)組默認(rèn)大小是11,增加的方式是 old*2+1。HashMap中hash數(shù)組的默認(rèn)大小是16,而且一定是2的指數(shù)。計(jì)算index的方法不同,HashTable直接利用hashcode()得出,HashMap對(duì)hashcode重新計(jì)算得出。



  19、collection和collections的區(qū)別。


  你千萬(wàn)別說(shuō)一個(gè)是單數(shù)一個(gè)是復(fù)數(shù)。


  collection是結(jié)合類的上級(jí)接口,子接口有List和Set等,Collections是java.util下的一個(gè)工具類,提供一些列靜態(tài)方法對(duì)集合搜索排序線程同步化等。



  20、什么時(shí)候用assert。


  api級(jí)的技術(shù)人員有可能會(huì)問(wèn)這個(gè)。


  在調(diào)試和優(yōu)化中使用,用于判斷邏輯表達(dá)式真假,若為假,終止程序并返回異常.assert比if的優(yōu)點(diǎn)在于可以選擇是否開啟assert檢查,也就是說(shuō)assert產(chǎn)生的測(cè)試代碼可以在正式發(fā)布時(shí)候選擇忽略,這帶來(lái)極大便利,默認(rèn)assert檢查是關(guān)閉的。此外,Junit相比assert來(lái)說(shuō),有著相似但更強(qiáng)大的測(cè)試能力。



  21、sleep()和wait()有什么區(qū)別?


  搞線程的最愛。


  1.sleep()是java.lang.Thread中的靜態(tài)方法,wait()是java.lang.Object中的方法;


  2.sleep()用作當(dāng)前線程阻塞自己,并在制定時(shí)間后恢復(fù),wait()用于當(dāng)前線程決定其他線程阻塞,是線程通信的表現(xiàn);


  3.sleep()不釋放資源,wait()釋放資源;


  4.sleep()必須捕獲異常,而wait()不需要。



  22、java有沒(méi)有g(shù)oto?


  很十三的問(wèn)題,如果哪個(gè)面試的問(wèn)到這個(gè)問(wèn)題,我勸你還是別進(jìn)這家公司。


  goto是java的關(guān)鍵字,但java不支持goto,goto會(huì)影響程序的可讀性,使邏輯顯得混亂。我的這本java教程上說(shuō)因?yàn)橥瑯拥脑?要盡量少用continue和break,且可以用等價(jià)的無(wú)continue/break循環(huán)代替,更不要說(shuō)goto了...總之一句話,java不支持goto。



23、是否可以繼承string類?


  String類為final,不可被繼承。



  24、當(dāng)一個(gè)線程進(jìn)入一個(gè)對(duì)象的一個(gè)synchronized方法后,其它線程是否可進(jìn)入此對(duì)象的其它方法?


  多線程編程涉及不多,運(yùn)用到鎖的更是少的可憐


  1 可以進(jìn)入此對(duì)象其他非同步方法.


  2 不可進(jìn)入此對(duì)象此同步方法


  3 不可進(jìn)入此對(duì)象其他同步方法



  25、try{}里有一個(gè)return語(yǔ)句,那么緊跟在這個(gè)try后的finally{}里的code會(huì)不會(huì)被執(zhí)行,什么時(shí)候被執(zhí)行,在return前還是后?


  return前被執(zhí)行,有程序?yàn)樽C:


  

高薪Java面試最常問(wèn)的題目+解答


  結(jié)果是:


  retrun


  finally


  return 1



  26、編程題:用最有效率的方法算出2乘以8等於幾?


  有c背景的程序員特別喜歡問(wèn)這種問(wèn)題。



27、staticnestedclass和innerclass的不同,說(shuō)得越多越好(面試題有的很籠統(tǒng))。


  static nested class 指靜態(tài)嵌套類,或稱嵌套類,是C++中常用的說(shuō)法,inner class指內(nèi)部類,是JAVA中的說(shuō)法。


  內(nèi)部類是一個(gè)類內(nèi)部類的統(tǒng)稱,具體分為四種:成員類,靜態(tài)成員類,局部類,匿名類。其中匿名類是局部類的特殊情況。對(duì)于成員類和靜態(tài)成員類都存在于類的頂層代碼中。相當(dāng)于類的靜態(tài)方法和非靜態(tài)方法的關(guān)系。區(qū)別在于成員類依賴于類實(shí)例而靜態(tài)成員類不依賴。


  所以前者只能訪問(wèn)實(shí)例方法和成員而后者只能訪問(wèn)靜態(tài)方法和成員。它們都用于創(chuàng)建一個(gè)只和當(dāng)前類有關(guān)。和其它類無(wú)關(guān)的依賴類.是否靜態(tài)取決于是否依賴類的實(shí)例。局部類相當(dāng)于局部變量。存在于類的局部代碼中。相當(dāng)于在main()中隨意定義和使用類。


  唯一的不同是它只能使用final型的局部變量。這和垃圾回收機(jī)制有關(guān)。即局部變量會(huì)在代碼塊結(jié)束后被回收。而對(duì)象不一定。所以對(duì)象只能使用final的局部變量。


  同樣,局部類存在的局部代碼塊也可以有靜態(tài)和非靜態(tài)的差別。局部類罪常見的應(yīng)用就是匿名類。匿名類就是無(wú)名子的局部類。常在SWING設(shè)計(jì)中的添加監(jiān)聽中出現(xiàn)。


  static nested class相當(dāng)于inner class中的靜態(tài)成員類。



28、gc是什么?為什么要有g(shù)c?


  基礎(chǔ)。


  GC 即 garbage collection(垃圾收集),是JAVA用于回收內(nèi)存的一種方式,主要的實(shí)現(xiàn)方法有引用計(jì)數(shù),標(biāo)記回收,復(fù)制清除等,GC可以避免內(nèi)存泄露和堆棧溢出,有效提高內(nèi)存的利用效率,同時(shí)將程序員從繁瑣的內(nèi)存管理中釋放出來(lái)。


  29、string s=new string("xyz");創(chuàng)建了幾個(gè)stringobject?


  2個(gè),文字池中1個(gè),堆中1個(gè),先在文字池中創(chuàng)建1個(gè)"xyz"對(duì)象,再在堆中拷貝一個(gè)"xyz"對(duì)象,并將其賦給引用s。



30、math.round(11.5)等於多少?math.round(-11.5)等於多少?


  Math.round(x)相當(dāng)于(int)Math.floor(x+o.5f),


  故math.round(11.5)=Math.floor(11.5+0.5)=Math.floor(12)=12;


  Math.round(-11.5)=Math.floor(-11)=-11;



  31、short s1=1;s1=s1+1;有什么錯(cuò)?short s1=1;s1+=1;有什么錯(cuò)?


  面試題都是很變態(tài)的,要做好受虐的準(zhǔn)備。


  s1=s1+1會(huì)出錯(cuò),s1+1是int型,不能將int賦值給s1.需要顯示轉(zhuǎn)換,s1=(int)(s1+1).而s1+=1不會(huì)出錯(cuò),至于原因,有人說(shuō)和編譯器的機(jī)制有關(guān),需要看編譯原理,話說(shuō)編譯原理什么的最討厭了,就這樣吧。


以上是動(dòng)力節(jié)點(diǎn)java學(xué)院小編分享的“java面試常問(wèn)java問(wèn)題及答案”內(nèi)容,希望對(duì)大家有幫助,更多精彩內(nèi)容請(qǐng)關(guān)注動(dòng)力節(jié)點(diǎn)java培訓(xùn)機(jī)構(gòu)。

      

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

  • 全國(guó)校區(qū) 2025-04-24 搶座中
  • 全國(guó)校區(qū) 2025-05-15 搶座中
  • 全國(guó)校區(qū) 2025-06-05 搶座中
  • 全國(guó)校區(qū) 2025-06-26 搶座中
免費(fèi)課程推薦 >>
技術(shù)文檔推薦 >>
主站蜘蛛池模板: 欧美a级毛片 | 91精品国产91久久 | 大香线一本 | 四虎影视免费在线 | 亚州在线播放 | 成人久久影院 | 国产一级免费 | 狠狠色噜噜狠狠狠狠五月婷 | 亚洲美女视频在线观看 | 国产精品a人片在线观看 | 国产精品亚洲成在人线 | 成人人免费夜夜视频观看 | 按摩毛片 | 国产精品短篇二区 | 欧美拍拍视频 | 国产精品剧情原创麻豆国产 | 狠狠操在线观看 | 国产97公开成人免费视频 | 自拍视频精品 | 色视频在线免费看 | 久久大香香蕉国产免费网vrr | 中文国产成人精品久久一区 | 欧美一级特毛片 | 日本免费一区二区三区看片 | 四虎影视在线看免费 720p | 国产福利影院 | 黄页网址在线免费观看 | 不卡一区二区在线观看 | 999久久久精品视频在线观看 | 一级特黄特交牲大片 | 69一级毛片 | 欧美成人观看视频在线 | 操综合网 | 久久是免费只精品热在线 | 天天干天天干天天干 | 日本免费不卡 | 国产美女色视频 | 国产a v高清一区二区三区 | 久久综合网久久综合 | 久久黄色免费视频 | 美女18隐私羞羞视频网站 |