国产精品久久久久影院老司_亚洲福利在线视频_中国女警察一级毛片视频_亚洲一区在线免费视频_久久亚洲第一_狠狠干五月

蜜蜂職場(chǎng)文庫(kù) > 面試技巧 >

java實(shí)習(xí)生面試題及答案

時(shí)間: 小龍 面試技巧

  對(duì)于Java實(shí)習(xí)生面試者而言,提前做好準(zhǔn)備很重要,以下是小編幫你們整理的java實(shí)習(xí)生面試題及答案,一起來(lái)學(xué)習(xí)啦。

  java實(shí)習(xí)生面試題及答案(一)

  第一,談?wù)刦inal, finally, finalize的區(qū)別。

  final—修飾符(關(guān)鍵字)如果一個(gè)類被聲明為final,意味著它不能再派生出新的子類,不能作為父類被繼承。因此一個(gè)類不能既被聲明為 abstract的,又被聲明為final的。將變量或方法聲明為final,可以保證它們?cè)谑褂弥胁槐桓淖儭1宦暶鳛閒inal的變量必須在聲明時(shí)給定初值,而在以后的引用中只能讀取,不可修改。被聲明為final的方法也同樣只能使用,不能重載.

  finally—再異常處理時(shí)提供 finally 塊來(lái)執(zhí)行任何清除操作。如果拋出一個(gè)異常,那么相匹配的 catch 子句就會(huì)執(zhí)行,然后控制就會(huì)進(jìn)入 finally 塊(如果有的話)。

  finalize—方法名。Java 技術(shù)允許使用 finalize() 方法在垃圾收集器將對(duì)象從內(nèi)存中清除出去之前做必要的清理工作。這個(gè)方法是由垃圾收集器在確定這個(gè)對(duì)象沒有被引用時(shí)對(duì)這個(gè)對(duì)象調(diào)用的。它是在 Object 類中定義的,因此所有的類都繼承了它。子類覆蓋 finalize() 方法以整理系統(tǒng)資源或者執(zhí)行其他清理工作。finalize() 方法是在垃圾收集器刪除對(duì)象之前對(duì)這個(gè)對(duì)象調(diào)用的。

  第二,Anonymous Inner Class (匿名內(nèi)部類) 是否可以extends(繼承)其它類,是否可以implements(實(shí)現(xiàn))interface(接口)?

  匿名的內(nèi)部類是沒有名字的內(nèi)部類。不能extends(繼承) 其它類,但一個(gè)內(nèi)部類可以作為一個(gè)接口,由另一個(gè)內(nèi)部類實(shí)現(xiàn)。

  第三,Static Nested Class 和 Inner Class的不同,說(shuō)得越多越好(面試題有的很籠統(tǒng))。 Nested Class (一般是C++的說(shuō)法),Inner Class (一般是JAVA的說(shuō)法)。Java內(nèi)部類與C++嵌套類最大的不同就在于是否有指向外部的引用上。

  注: 靜態(tài)內(nèi)部類(Inner Class)意味著1創(chuàng)建一個(gè)static內(nèi)部類的對(duì)象,不需要一個(gè)外部類對(duì)象,2不能從一個(gè)static內(nèi)部類的一個(gè)對(duì)象訪問一個(gè)外部類對(duì)象

  第四,&和&&的區(qū)別。

  &是位運(yùn)算符。&&是布爾邏輯運(yùn)算符。

  第五,HashMap和Hashtable的區(qū)別。

  都屬于Map接口的類,實(shí)現(xiàn)了將惟一鍵映射到特定的值上。

  HashMap 類沒有分類或者排序。它允許一個(gè) null 鍵和多個(gè) null 值。

  Hashtable 類似于 HashMap,但是不允許 null 鍵和 null 值。它也比 HashMap 慢,因?yàn)樗峭降摹?/p>

  第六,Collection 和 Collections的區(qū)別。

  Collections是個(gè)java.util下的類,它包含有各種有關(guān)集合操作的靜態(tài)方法。

  Collection是個(gè)java.util下的接口,它是各種集合結(jié)構(gòu)的父接口。

  java實(shí)習(xí)生面試題及答案(二)

  第一,什么時(shí)候用assert。

  斷言是一個(gè)包含布爾表達(dá)式的語(yǔ)句,在執(zhí)行這個(gè)語(yǔ)句時(shí)假定該表達(dá)式為 true。如果表達(dá)式計(jì)算為 false,那么系統(tǒng)會(huì)報(bào)告一個(gè) AssertionError。它用于調(diào)試目的:

  assert(a > 0); // throws an AssertionError if a <= 0

  斷言可以有兩種形式:

  assert Expression1 ;

  assert Expression1 : Expression2 ;

  Expression1 應(yīng)該總是產(chǎn)生一個(gè)布爾值。

  Expression2 可以是得出一個(gè)值的任意表達(dá)式。這個(gè)值用于生成顯示更多調(diào)試信息的 String 消息。

  斷言在默認(rèn)情況下是禁用的。要在編譯時(shí)啟用斷言,需要使用 source 1.4 標(biāo)記: javac -source 1.4 Test.java

  要在運(yùn)行時(shí)啟用斷言,可使用 -enableassertions 或者 -ea 標(biāo)記。

  要在運(yùn)行時(shí)選擇禁用斷言,可使用 -da 或者 -disableassertions 標(biāo)記。

  要系統(tǒng)類中啟用斷言,可使用 -esa 或者 -dsa 標(biāo)記。還可以在包的基礎(chǔ)上啟用或者禁用斷言。

  可以在預(yù)計(jì)正常情況下不會(huì)到達(dá)的任何位置上放置斷言。斷言可以用于驗(yàn)證傳遞給私有方法的參數(shù)。不過,斷言不應(yīng)該用于驗(yàn)證傳遞給公有方法的參數(shù),因?yàn)椴还苁欠駟⒂昧藬嘌?,公有方法都必須檢查其參數(shù)。不過,既可以在公有方法中,也可以在�***?蟹椒ㄖ欣?枚涎圓饈院籩錳跫?A磽猓?涎圓揮Ω靡勻魏畏絞礁謀涑絳虻淖刺?�

  第二,GC是什么? 為什么要有GC? (基礎(chǔ))。

  GC是垃圾收集器。Java 程序員不用擔(dān)心內(nèi)存管理,因?yàn)槔占鲿?huì)自動(dòng)進(jìn)行管理。要請(qǐng)求垃圾收集,可以調(diào)用下面的方法之一:

  System.gc()

  Runtime.getRuntime().gc()

  第三,String s = new String("xyz");創(chuàng)建了幾個(gè)String Object?

  兩個(gè)對(duì)象,一個(gè)是“xyx”,一個(gè)是指向“xyx”的引用對(duì)象s。

  第四,Math.round(11.5)等於多少? Math.round(-11.5)等於多少?

  Math.round(11.5)返回(long)12,Math.round(-11.5)返回(long)-11;

  java實(shí)習(xí)生面試題及答案(三)

  第一,short s1 = 1; s1 = s1 + 1;有什么錯(cuò)? short s1 = 1; s1 += 1;有什么錯(cuò)?

  short s1 = 1; s1 = s1 + 1;有錯(cuò),s1是short型,s1+1是int型,不能顯式轉(zhuǎn)化為short型??尚薷臑閟1 =(short)(s1 + 1) 。short s1 = 1; s1 += 1正確。

  第二,sleep() 和 wait() 有什么區(qū)別? 搞線程的最愛

  sleep()方法是使線程停止一段時(shí)間的方法。在sleep 時(shí)間間隔期滿后,線程不一定立即恢復(fù)執(zhí)行。這是因?yàn)樵谀莻€(gè)時(shí)刻,其它線程可能正在運(yùn)行而且沒有被調(diào)度為放棄執(zhí)行,除非(a)“醒來(lái)”的線程具有更高的優(yōu)先級(jí)(b)正在運(yùn)行的線程因?yàn)槠渌蚨枞?/p>

  wait()是線程交互時(shí),如果線程對(duì)一個(gè)同步對(duì)象x 發(fā)出一個(gè)wait()調(diào)用,該線程會(huì)暫停執(zhí)行,被調(diào)對(duì)象進(jìn)入等待狀態(tài),直到被喚醒或等待時(shí)間到。

  第三,Java有沒有g(shù)oto?

  Goto—java中的保留字,現(xiàn)在沒有在java中使用。

  第四,數(shù)組有沒有l(wèi)ength()這個(gè)方法? String有沒有l(wèi)ength()這個(gè)方法?

  數(shù)組沒有l(wèi)ength()這個(gè)方法,有l(wèi)ength的屬性。

  String有有l(wèi)ength()這個(gè)方法。

  第五,Overload和Override的區(qū)別。Overloaded的方法是否可以改變返回值的類型?

  方法的重寫Overriding和重載Overloading是Java多態(tài)性的不同表現(xiàn)。重寫Overriding是父類與子類之間多態(tài)性的一種表現(xiàn),重載Overloading是一個(gè)類中多態(tài)性的一種表現(xiàn)。如果在子類中定義某方法與其父類有相同的名稱和參數(shù),我們說(shuō)該方法被重寫 (Overriding)。子類的對(duì)象使用這個(gè)方法時(shí),將調(diào)用子類中的定義,對(duì)它而言,父類中的定義如同被“屏蔽”了。

  如果在一個(gè)類中定義了多個(gè)同名的方法,它們或有不同的參數(shù)個(gè)數(shù)或有不同的參數(shù)類型,則稱為方法的重載(Overloading)。Overloaded的方法是可以改變返回值的類型。

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

  Set里的元素是不能重復(fù)的,那么用iterator()方法來(lái)區(qū)分重復(fù)與否。equals()是判讀兩個(gè)Set是否相等。

  equals()和==方法決定引用值是否指向同一對(duì)象equals()在類中被覆蓋,為的是當(dāng)兩個(gè)分離的對(duì)象的內(nèi)容和類型相配的話,返回真值。

  第七,給我一個(gè)你最常見到的runtime exception。

  ArithmeticException, ArrayStoreException, BufferOverflowException, BufferUnderflowException, CannotRedoException, CannotUndoException, ClassCastException, CMMException, ConcurrentModificationException, DOMException, EmptyStackException, IllegalArgumentException, IllegalMonitorStateException, IllegalPathStateException, IllegalStateException,ImagingOpException, IndexOutOfBoundsException, MissingResourceException, NegativeArraySizeException, NoSuchElementException, NullPointerException, ProfileDataException, ProviderException, RasterFormatException, SecurityException, SystemException, UndeclaredThrowableException, UnmodifiableSetException, UnsupportedOperationException

49856 主站蜘蛛池模板: 一本一道久久久a久久久精品91 | 国产毛片网站 | 成人午夜视频免费看 | 欧美一区二区三区中文字幕 | 欧美一级网| 久色网站| 欧美日韩成人一区二区 | 国产成年人小视频 | 最新欧美精品一区二区三区 | qyl在线视频精品免费观看 | 国产精品久久久久永久免费 | 精品黑人一区二区三区国语馆 | 视频一区二区三区在线播放 | 国产精品免费成人 | 美女视频网站黄色 | 色播亚洲 | 精品一区二区久久久久久按摩 | 一区免费 | 九九热久久免费视频 | 羞羞视频一区二区 | 中文字幕线观看 | 亚洲一区在线免费视频 | 亚洲第一色婷婷 | 亚洲成人涩涩 | 最新av免费网址 | 国产1区2区3区中文字幕 | 免费看真人a一级毛片 | 久久综合一区二区 | 亚洲 91 | 免费播放av | 爱性久久久久久久 | 久久久久久久久久性 | 91精品国产乱码久久久久久久久 | 国产一区二区精品免费 | 久久sp | 斗罗破苍穹在线观看免费完整观看 | 在线成人免费观看 | 免费看国产 | 久久精品操 | 91社影院在线观看 | 史上最强炼体老祖动漫在线观看 |