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

正文內(nèi)容

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

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

【正文】 Java基礎(chǔ)方面: 作用域public,private,protected,以及不寫(xiě)時(shí)的區(qū)別 答:區(qū)別如下: 作用域 當(dāng)前類(lèi) 同一package 子孫類(lèi) 其他package public √ √ √ √ protected √ √ √ friendly √ √ private √ 不寫(xiě)時(shí)默認(rèn)為friendly ArrayList和Vector的區(qū)別,HashMap和Hashtable的區(qū)別 答:就ArrayList與Vector主要從二方面來(lái)說(shuō). :Vector是線(xiàn)程安全的,也就是說(shuō)是同步的,而ArrayList是線(xiàn)程序不安全的,不是同步的 :當(dāng)需要增長(zhǎng)時(shí),Vector默認(rèn)增長(zhǎng)為原來(lái)一培,而ArrayList卻是原來(lái)的一半 就HashMap與HashTable主要從三方面來(lái)說(shuō)。 :Hashtable是基于陳舊的Dictionary類(lèi)的,HashMap是Java :Hashtable是線(xiàn)程安全的,也就是說(shuō)是同步的,而HashMap是線(xiàn)程序不安全的,不是同步的 :只有HashMap可以讓你將空值作為一個(gè)表的條目的key或value 。 兩個(gè)對(duì)象值相同((y) == true),但卻可有不同的hash code,這句話(huà)對(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ō)出一些常用的類(lèi),包,接口,請(qǐng)各舉5個(gè)?答案:常用類(lèi)System,ArrayList,FileInputStream,Thread,Socket. ,常用接口Collection,Connection, Cloneable, Comparable, Serializable 進(jìn)程和線(xiàn)程的區(qū)別:進(jìn)程和線(xiàn)程都是由操作系統(tǒng)所體會(huì)的程序運(yùn)行的基本單元,系統(tǒng)利用該基本單元實(shí)現(xiàn)系統(tǒng)對(duì)應(yīng)用的并發(fā)性。進(jìn)程和線(xiàn)程的區(qū)別在于:簡(jiǎn)而言之,一個(gè)程序至少有一個(gè)進(jìn)程,一個(gè)進(jìn)程至少有一個(gè)線(xiàn)程. 線(xiàn)程的劃分尺度小于進(jìn)程,使得多線(xiàn)程程序的并發(fā)性高。另外,進(jìn)程在執(zhí)行過(guò)程中擁有獨(dú)立的內(nèi)存單元,而多個(gè)線(xiàn)程共享內(nèi)存,從而極大地提高了程序的運(yùn)行效率。線(xiàn)程在執(zhí)行過(guò)程中與進(jìn)程還是有區(qū)別的。每個(gè)獨(dú)立的線(xiàn)程有一個(gè)程序運(yùn)行的入口、順序執(zhí) 行了序列和程序的出口。但是線(xiàn)程不能夠獨(dú)立執(zhí)行,必須依存在應(yīng)用程序中,由應(yīng)用程序提供多個(gè)線(xiàn)程執(zhí)行控制。從邏輯角度來(lái)看,多線(xiàn)程的意義在于一個(gè)應(yīng)用程序中,有多個(gè)執(zhí)行部分可以同時(shí)執(zhí)行。但操作系統(tǒng)并沒(méi)有將多個(gè)線(xiàn)程看做多個(gè)獨(dú)立的應(yīng)用,來(lái)實(shí)現(xiàn)進(jìn)程的調(diào)度和管理以及資源分配。這就是進(jìn)程和線(xiàn)程的重要區(qū)別。進(jìn)程是具有一定獨(dú)立功能的程序關(guān)于某個(gè)數(shù)據(jù)集合上的一次運(yùn)行活動(dòng),進(jìn)程是系統(tǒng)進(jìn)行資源分配和調(diào)度的一個(gè)獨(dú)立單位.線(xiàn)程是進(jìn)程的一個(gè)實(shí)體,是CPU調(diào)度和分派的基本單位,只擁有一點(diǎn)在運(yùn)行中必不可少的資源(如程序計(jì)數(shù)器,一組寄存器和棧),但是它可與同屬一個(gè)進(jìn)程的其他的線(xiàn)程共享進(jìn)程所擁有的全部資源.一個(gè)線(xiàn)程可以創(chuàng)建和撤銷(xiāo)另一個(gè)線(xiàn)程。同一個(gè)進(jìn)程中的多個(gè)線(xiàn)程之間可以并發(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的方法是否可以改變返回值的類(lèi)型? 方法的重寫(xiě)Overriding和重載Overloading是Java多態(tài)性的不同表現(xiàn)。重寫(xiě)Overriding是父類(lèi)與子類(lèi)之間多態(tài)性的一種表現(xiàn),重載Overloading是一個(gè)類(lèi)中多態(tài)性的一種表現(xiàn)。如果在子類(lèi)中定義某方法與其父類(lèi)有相同的名稱(chēng)和參數(shù),我們說(shuō)該方法被重寫(xiě) (Overriding)。子類(lèi)的對(duì)象使用這個(gè)方法時(shí),將調(diào)用子類(lèi)中的定義,對(duì)它而言,父類(lèi)中的定義如同被“屏蔽”了。如果在一個(gè)類(lèi)中定義了多個(gè)同名的方法,它們或有不同的參數(shù)個(gè)數(shù)或有不同的參數(shù)類(lèi)型,則稱(chēng)為方法的重載(Overloading)。Overloaded的方法是可以改變返回值的類(lèi)型。 Set里的元素是不能重復(fù)的,那么用什么方法來(lái)區(qū)分重復(fù)與否呢? 是用==還是equals()? 它們有何區(qū)別? Set里的元素是不能重復(fù)的,用iterator()方法來(lái)區(qū)分重復(fù)與否。equals()是判讀兩個(gè)Set是否相等。 equals()和==方法決定引用值是否指向同一對(duì)象equals()在類(lèi)中被覆蓋,為的是當(dāng)兩個(gè)分離的對(duì)象的內(nèi)容和類(lèi)型相配的話(huà),返回真值。 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? 都不能 接口是否可繼承接口? 抽象類(lèi)是否可實(shí)現(xiàn)(implements)接口? 抽象類(lèi)是否可繼承實(shí)體類(lèi)(concrete class)? 接口可以繼承接口。抽象類(lèi)可以實(shí)現(xiàn)(implements)接口,抽象類(lèi)是否可繼承實(shí)體類(lèi),但前提是實(shí)體類(lèi)必須有明確的構(gòu)造函數(shù)。()還是start()? 啟動(dòng)一個(gè)線(xiàn)程是調(diào)用start()方法,使線(xiàn)程所代表的虛擬處理機(jī)處于可運(yùn)行狀態(tài),這意味著它可以由JVM調(diào)度并執(zhí)行。這并不意味著線(xiàn)程就會(huì)立即運(yùn)行。run()方法可以產(chǎn)生必須退出的標(biāo)志來(lái)停止一個(gè)線(xiàn)程。? 構(gòu)造器Constructor不能被繼承,因此不能重寫(xiě)Overriding,但可以被重載Overloading。 是否可以繼承String類(lèi)? String類(lèi)是final類(lèi)故不可以繼承。 當(dāng)一個(gè)線(xiàn)程進(jìn)入一個(gè)對(duì)象的一個(gè)synchronized方法后,其它線(xiàn)程是否可進(jìn)入此對(duì)象的其它方法? 不能,一個(gè)對(duì)象的一個(gè)synchronized方法只能由一個(gè)線(xiàn)程訪(fǎng)問(wèn)。多線(xiàn)程有幾種實(shí)現(xiàn)方法,都是什么?同步有幾種實(shí)現(xiàn)方法,都是什么? 答:多線(xiàn)程有兩種實(shí)現(xiàn)方法,分別是繼承Thread類(lèi)與實(shí)現(xiàn)Runnable接口 同步的實(shí)現(xiàn)方面有兩種,分別是synchronized,wait與notify 4.1談?wù)刦inal, finally, finalize的區(qū)別。 final?修飾符(關(guān)鍵字)如果一個(gè)類(lèi)被聲明為final,意味著它不能再派生出新的子類(lèi),不能作為父類(lèi)被繼承。因此一個(gè)類(lèi)不能既被聲明為 abstract的,又被聲明為final的。將變量或方法聲明為final,可以保證它們?cè)谑褂弥胁槐桓淖?。被聲明為final的變量必須在聲明時(shí)給定初值,而在以后的引用中只能讀取,不可修改。被聲明為final的方法也同樣只能使用,不能重載 finally?再異常處理時(shí)提供 finally 塊來(lái)執(zhí)行任何清除操作。如果拋出一個(gè)異常,那么相匹配的 catch 子句就會(huì)執(zhí)行,然后控制就會(huì)進(jìn)入 finally 塊(如果有的話(huà))。 finalize?方法名。Java 技術(shù)允許使用 finalize() 方法在垃圾收集器將對(duì)象從內(nèi)存中清除出去之前做必要的清理工作。這個(gè)方法是由垃圾收集器在確定這個(gè)對(duì)象沒(méi)有被引用時(shí)對(duì)這個(gè)對(duì)象調(diào)用的。它是在 Object 類(lèi)中定義的,因此所有的類(lèi)都繼承了它。子類(lèi)覆蓋 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接口的類(lèi),實(shí)現(xiàn)了將惟一鍵映射到特定的值上。 HashMap 類(lèi)沒(méi)有分類(lèi)或者排序。它允許一個(gè) null 鍵和多個(gè) null 值。 Hashtable 類(lèi)似于 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型。可修改為s1 =(short)(s1 + 1) 。short s1 = 1。 s1 += 1正確。4.8 sleep() 和 wait() 有什么區(qū)別? 搞線(xiàn)程的最?lèi)?ài) sleep()方法是使線(xiàn)程停止一段時(shí)間的方法。在sleep 時(shí)間間隔期滿(mǎn)后,線(xiàn)程不一定立即恢復(fù)執(zhí)行。這是因?yàn)樵谀莻€(gè)時(shí)刻,其它線(xiàn)程可能正在運(yùn)行而且沒(méi)有被調(diào)度為放棄執(zhí)行,除非(a)“醒來(lái)”的線(xiàn)程具有更高的優(yōu)先級(jí) (b)正在運(yùn)行的線(xiàn)程因?yàn)槠渌蚨枞?wait()是線(xiàn)程交互時(shí),如果線(xiàn)程對(duì)一個(gè)同步對(duì)象x 發(fā)出一個(gè)wait()調(diào)用,該線(xiàn)程會(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í)候類(lèi)的執(zhí)行順序問(wèn)題,一般都是選擇題,問(wèn)你將會(huì)打印出什么? 答:父類(lèi): package test。 public class FatherClass { public FatherClass() { (FatherClass Create)。 } } 子類(lèi): 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)部類(lè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)部類(lèi)則不能有靜態(tài)成員。 故 A、B 錯(cuò) ,而不可訪(fǎng)問(wèn)外部類(lèi)的非靜態(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