freepeople性欧美熟妇, 色戒完整版无删减158分钟hd, 无码精品国产vα在线观看DVD, 丰满少妇伦精品无码专区在线观看,艾栗栗与纹身男宾馆3p50分钟,国产AV片在线观看,黑人与美女高潮,18岁女RAPPERDISSSUBS,国产手机在机看影片

正文內(nèi)容

java大量面試題目(已修改)

2025-04-08 23:37 本頁(yè)面
 

【正文】 Java基礎(chǔ)方面: 作用域public,private,protected,以及不寫時(shí)的區(qū)別 答:區(qū)別如下: 作用域 當(dāng)前類 同一package 子孫類 其他package public √ √ √ √ protected √ √ √ friendly √ √ private √ 不寫時(shí)默認(rèn)為friendly ArrayList和Vector的區(qū)別,HashMap和Hashtable的區(qū)別 答:就ArrayList與Vector主要從二方面來(lái)說(shuō). :Vector是線程安全的,也就是說(shuō)是同步的,而ArrayList是線程序不安全的,不是同步的 :當(dāng)需要增長(zhǎng)時(shí),Vector默認(rèn)增長(zhǎng)為原來(lái)一培,而ArrayList卻是原來(lái)的一半 就HashMap與HashTable主要從三方面來(lái)說(shuō)。 :Hashtable是基于陳舊的Dictionary類的,HashMap是Java :Hashtable是線程安全的,也就是說(shuō)是同步的,而HashMap是線程序不安全的,不是同步的 :只有HashMap可以讓你將空值作為一個(gè)表的條目的key或value 。 兩個(gè)對(duì)象值相同((y) == true),但卻可有不同的hash code,這句話對(duì)不對(duì)? 不對(duì),有相同的hash code。 當(dāng)一個(gè)對(duì)象被當(dāng)作參數(shù)傳遞到一個(gè)方法后,此方法可改變這個(gè)對(duì)象的屬性,并可返回變化后的結(jié)果,那么這里到底是值傳遞還是引用傳遞? 是值傳遞。Java 編程語(yǔ)言只由值傳遞參數(shù)。當(dāng)一個(gè)對(duì)象實(shí)例作為一個(gè)參數(shù)被傳遞到方法中時(shí),參數(shù)的值就是對(duì)該對(duì)象的引用。對(duì)象的內(nèi)容可以在被調(diào)用的方法中改變,但對(duì)象的引用是永遠(yuǎn)不會(huì)改變的。 swtich是否能作用在byte上,是否能作用在long上,是否能作用在String上? switch(expr1)中,expr1是一個(gè)整數(shù)表達(dá)式。因此傳遞給 switch 和 case 語(yǔ)句的參數(shù)應(yīng)該是 int、 short、 char 或者 byte。long,string 都不能作用于swtich。(它能使用長(zhǎng)度是在int范圍之內(nèi)的) 下面都是正確的main方法簽名。public static void main(String[] args)public static final void main(String[] args)static public void main(String[] args)static public synchronized void main(String[] args) 說(shuō)出一些常用的類,包,接口,請(qǐng)各舉5個(gè)?答案:常用類System,ArrayList,FileInputStream,Thread,Socket. ,常用接口Collection,Connection, Cloneable, Comparable, Serializable 進(jìn)程和線程的區(qū)別:進(jìn)程和線程都是由操作系統(tǒng)所體會(huì)的程序運(yùn)行的基本單元,系統(tǒng)利用該基本單元實(shí)現(xiàn)系統(tǒng)對(duì)應(yīng)用的并發(fā)性。進(jìn)程和線程的區(qū)別在于:簡(jiǎn)而言之,一個(gè)程序至少有一個(gè)進(jìn)程,一個(gè)進(jìn)程至少有一個(gè)線程. 線程的劃分尺度小于進(jìn)程,使得多線程程序的并發(fā)性高。另外,進(jìn)程在執(zhí)行過(guò)程中擁有獨(dú)立的內(nèi)存單元,而多個(gè)線程共享內(nèi)存,從而極大地提高了程序的運(yùn)行效率。線程在執(zhí)行過(guò)程中與進(jìn)程還是有區(qū)別的。每個(gè)獨(dú)立的線程有一個(gè)程序運(yùn)行的入口、順序執(zhí) 行了序列和程序的出口。但是線程不能夠獨(dú)立執(zhí)行,必須依存在應(yīng)用程序中,由應(yīng)用程序提供多個(gè)線程執(zhí)行控制。從邏輯角度來(lái)看,多線程的意義在于一個(gè)應(yīng)用程序中,有多個(gè)執(zhí)行部分可以同時(shí)執(zhí)行。但操作系統(tǒng)并沒(méi)有將多個(gè)線程看做多個(gè)獨(dú)立的應(yīng)用,來(lái)實(shí)現(xiàn)進(jìn)程的調(diào)度和管理以及資源分配。這就是進(jìn)程和線程的重要區(qū)別。進(jìn)程是具有一定獨(dú)立功能的程序關(guān)于某個(gè)數(shù)據(jù)集合上的一次運(yùn)行活動(dòng),進(jìn)程是系統(tǒng)進(jìn)行資源分配和調(diào)度的一個(gè)獨(dú)立單位.線程是進(jìn)程的一個(gè)實(shí)體,是CPU調(diào)度和分派的基本單位,只擁有一點(diǎn)在運(yùn)行中必不可少的資源(如程序計(jì)數(shù)器,一組寄存器和棧),但是它可與同屬一個(gè)進(jìn)程的其他的線程共享進(jìn)程所擁有的全部資源.一個(gè)線程可以創(chuàng)建和撤銷另一個(gè)線程。同一個(gè)進(jìn)程中的多個(gè)線程之間可以并發(fā)執(zhí)行.char型變量中能不能存貯一個(gè)中文漢字?為什么? (方正 簡(jiǎn)答題)答:是能夠定義成為一個(gè)中文的,因?yàn)閖ava中以u(píng)nicode編碼,一個(gè)char占16位,所以放一個(gè)中文是沒(méi)問(wèn)題的。 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)容和類型相配的話,返回真值。 error和exception有什么區(qū)別? error 表示恢復(fù)不是不可能但很困難的情況下的一種嚴(yán)重問(wèn)題。比如說(shuō)內(nèi)存溢出。不可能指望程序能處理這樣的情況。 exception 表示一種設(shè)計(jì)或?qū)崿F(xiàn)問(wèn)題。也就是說(shuō),它表示如果程序運(yùn)行正常,從不會(huì)發(fā)生的情況。 abstract的method是否可同時(shí)是static,是否可同時(shí)是native,是否可同時(shí)是synchronized? 都不能 接口是否可繼承接口? 抽象類是否可實(shí)現(xiàn)(implements)接口? 抽象類是否可繼承實(shí)體類(concrete class)? 接口可以繼承接口。抽象類可以實(shí)現(xiàn)(implements)接口,抽象類是否可繼承實(shí)體類,但前提是實(shí)體類必須有明確的構(gòu)造函數(shù)。()還是start()? 啟動(dòng)一個(gè)線程是調(diào)用start()方法,使線程所代表的虛擬處理機(jī)處于可運(yùn)行狀態(tài),這意味著它可以由JVM調(diào)度并執(zhí)行。這并不意味著線程就會(huì)立即運(yùn)行。run()方法可以產(chǎn)生必須退出的標(biāo)志來(lái)停止一個(gè)線程。? 構(gòu)造器Constructor不能被繼承,因此不能重寫Overriding,但可以被重載Overloading。 是否可以繼承String類? String類是final類故不可以繼承。 當(dāng)一個(gè)線程進(jìn)入一個(gè)對(duì)象的一個(gè)synchronized方法后,其它線程是否可進(jìn)入此對(duì)象的其它方法? 不能,一個(gè)對(duì)象的一個(gè)synchronized方法只能由一個(gè)線程訪問(wèn)。多線程有幾種實(shí)現(xiàn)方法,都是什么?同步有幾種實(shí)現(xiàn)方法,都是什么? 答:多線程有兩種實(shí)現(xiàn)方法,分別是繼承Thread類與實(shí)現(xiàn)Runnable接口 同步的實(shí)現(xiàn)方面有兩種,分別是synchronized,wait與notify 4.1談?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ì)象沒(méi)有被引用時(shí)對(duì)這個(gè)對(duì)象調(diào)用的。它是在 Object 類中定義的,因此所有的類都繼承了它。子類覆蓋 finalize() 方法以整理系統(tǒng)資源或者執(zhí)行其他清理工作。finalize() 方法是在垃圾收集器刪除對(duì)象之前對(duì)這個(gè)對(duì)象調(diào)用的。4.2 amp。和amp。amp。的區(qū)別。 amp。是位運(yùn)算符。amp。amp。是布爾邏輯運(yùn)算符。4.3 HashMap和Hashtable的區(qū)別。 都屬于Map接口的類,實(shí)現(xiàn)了將惟一鍵映射到特定的值上。 HashMap 類沒(méi)有分類或者排序。它允許一個(gè) null 鍵和多個(gè) null 值。 Hashtable 類似于 HashMap,但是不允許 null 鍵和 null 值。它也比 HashMap 慢,因?yàn)樗峭降摹?.4 Collection 和 Collections的區(qū)別。 ,它包含有各種有關(guān)集合操作的靜態(tài)方法。 ,它是各種集合結(jié)構(gòu)的父接口。4.5 String s = new String(xyz)。創(chuàng)建了幾個(gè)String Object? (方正 選擇題)兩個(gè)對(duì)象,一個(gè)是“xyx”,一個(gè)是指向“xyx”的引用對(duì)象s。4.6 ()等於多少? ()等於多少? ()返回(long)12,()返回(long)11。4.7 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正確。4.8 sleep() 和 wait() 有什么區(qū)別? 搞線程的最愛 sleep()方法是使線程停止一段時(shí)間的方法。在sleep 時(shí)間間隔期滿后,線程不一定立即恢復(fù)執(zhí)行。這是因?yàn)樵谀莻€(gè)時(shí)刻,其它線程可能正在運(yùn)行而且沒(méi)有被調(diào)度為放棄執(zhí)行,除非(a)“醒來(lái)”的線程具有更高的優(yōu)先級(jí) (b)正在運(yùn)行的線程因?yàn)槠渌蚨枞?wait()是線程交互時(shí),如果線程對(duì)一個(gè)同步對(duì)象x 發(fā)出一個(gè)wait()調(diào)用,該線程會(huì)暫停執(zhí)行,被調(diào)對(duì)象進(jìn)入等待狀態(tài),直到被喚醒或等待時(shí)間到。4.9 數(shù)組有沒(méi)有l(wèi)ength()這個(gè)方法? String有沒(méi)有l(wèi)ength()這個(gè)方法? 數(shù)組沒(méi)有l(wèi)ength()這個(gè)方法,有l(wèi)ength的屬性。 String有l(wèi)ength()這個(gè)方法。繼承時(shí)候類的執(zhí)行順序問(wèn)題,一般都是選擇題,問(wèn)你將會(huì)打印出什么? 答:父類: package test。 public class FatherClass { public FatherClass() { (FatherClass Create)。 } } 子類: package test。 import 。 public class ChildClass extends FatherClass { public ChildClass() { (ChildClass Create)。 } public static void main(String[] args) { FatherClass fc = new FatherClass()。 ChildClass cc = new ChildClass()。 } } 輸出結(jié)果: C:java FatherClass Create FatherClass Create ChildClass Create 內(nèi)部類的實(shí)現(xiàn)方式? 答:示例代碼如下: package test。 public class OuterClass { private class InterClass { public InterClass() { (InterClass Create)。 } } public OuterClass() { InterClass ic = new InterClass()。 (OuterClass Create)。 } public static void main(String[] args) { OuterClass oc = new OuterClass()。 } } 輸出結(jié)果: C:java test/OuterClass InterClass Create OuterClass Create 再一個(gè)例題: public class OuterClass { private double d1 = 。 //insert code here } You need to insert an inner class declaration at line 3. Which two inner class declarations are valid?(Choose two.) A. class InnerOne{ public static double methoda() {return d1。} } B. public class InnerOne{ static double methoda() {return d1。} } C. private class InnerOne{ double methoda() {return d1。} } D. static class InnerOne{ protected double methoda() {return d1。} } E. abstract class InnerOne{ public abstract double methoda()。 } 說(shuō)明如下: ,而非靜態(tài)內(nèi)部類則不能有靜態(tài)成員。 故 A、B 錯(cuò) ,而不可訪問(wèn)外部類的非靜態(tài)變量;return d1 出錯(cuò)。 故 D 錯(cuò) 。 故 C
點(diǎn)擊復(fù)制文檔內(nèi)容
黨政相關(guān)相關(guān)推薦
文庫(kù)吧 www.dybbs8.com
公安備案圖鄂ICP備17016276號(hào)-1