中文字幕在线一区二区在线,久久久精品免费观看国产,无码日日模日日碰夜夜爽,天堂av在线最新版在线,日韩美精品无码一本二本三本,麻豆精品三级国产国语,精品无码AⅤ片,国产区在线观看视频

      J2EE經(jīng)典面試試題及答案

      時間:2024-09-04 11:46:27 J2EE培訓 我要投稿

      J2EE經(jīng)典面試試題及答案

        1、垃圾回收的優(yōu)點和原理。

      J2EE經(jīng)典面試試題及答案

        Java語言中一個顯著的特點就是引入了垃圾回收機制,使c++程序員最頭疼的內(nèi)存管理的問題迎刃

        而解,它使得Java程序員在編寫程序的時候不再需要考慮內(nèi)存管理。由于有個垃圾回收機制,Java中的對

        象不再有“作用域”的概念,只有對象的引用才有“作用域”。垃圾回收可以有效的防止內(nèi)存泄露,有效

        的使用可以使用的內(nèi)存。垃圾回收器通常是作為一個單獨的低級別的線程運行,不可預(yù)知的情況下對內(nèi)存

        堆中已經(jīng)死亡的或者長時間沒有使用的對象進行清楚和回收,程序員不能實時的調(diào)用垃圾回收器對某個對

        象或所有對象進行垃圾回收。

        2、請說出你所知道的線程同步的方法。

        wait():使一個線程處于等待狀態(tài),并且釋放所持有的對象的lock。

        sleep():使一個正在運行的線程處于睡眠狀態(tài),是一個靜態(tài)方法,調(diào)用此方法要捕捉

        InterruptedException異常。

        notify():喚醒一個處于等待狀態(tài)的線程,注意的是在調(diào)用此方法的時候,并不能確切的喚醒某一

        個等待狀態(tài)的線程,而是由JVM確定喚醒哪個線程,而且不是按優(yōu)先級。

        Allnotity():喚醒所有處入等待狀態(tài)的線程,注意并不是給所有喚醒線程一個對象的鎖,而是讓它

        們競爭。

        3、在java中一個類被聲明為final類型,表示了什么意思?

        表示該類不能被繼承,是頂級類。

        4、 Error與Exception有什么區(qū)別?

        Error表示系統(tǒng)級的錯誤和程序不必處理的異常,

        Exception表示需要捕捉或者需要程序進行處理的異常。

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

        &是位運算符。&&是布爾邏輯運算符。

        6、Collection 和 Collections的區(qū)別。

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

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

        7、 HashMap和Hashtable的區(qū)別。

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

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

        Hashtable 類似于 HashMap,但是不允許 null 鍵和 null 值。它也比 HashMap 慢,因為它是同步的。

        8、GC是什么? 為什么要有GC? .

        GC是垃圾收集器。Java 程序員不用擔心內(nèi)存管理,因為垃圾收集器會自動進行管理。要請求垃圾收

        集,可以調(diào)用下面的方法之一:System.gc()

        Runtime.getRuntime().gc()

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

        final—修飾符(關(guān)鍵字)如果一個類被聲明為final,意味著它不能再派生出新的子類,不能作

        為父類被繼承。因此一個類不能既被聲明為 abstract的,又被聲明為final的。將變量或方法聲明為

        final,可以保證它們在使用中不被改變。被聲明為final的變量必須在聲明時給定初值,而在以后的引用

        中只能讀取,不可修改。被聲明為final的方法也同樣只能使用,不能重載。

        finally—再異常處理時提供 finally 塊來執(zhí)行任何清除操作。如果拋出一個異常,那么相匹配

        的 catch 子句就會執(zhí)行,然后控制就會進入 finally 塊(如果有的話)。

        finalize—方法名。Java 技術(shù)允許使用 finalize() 方法在垃圾收集器將對象從內(nèi)存中清除出去

        之前做必要的清理工作。這個方法是由垃圾收集器在確定這個對象沒有被引用時對這個對象調(diào)用的。它是

        在 Object 類中定義的,因此所有的類都繼承了它。子類覆蓋 finalize() 方法以整理系統(tǒng)資源或者執(zhí)行

        其他清理工作。finalize() 方法是在垃圾收集器刪除對象之前對這個對象調(diào)用的。

        10、String s = new String("xyz");創(chuàng)建了幾個String Object?

        兩個對象,一個是"xyz",一個是指向"xyz"的引用對象s。

        11、Math.round(11.5)等於多少? Math.round(-11.5)等於多少?

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

        12、Java有沒有g(shù)oto?

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

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

        sleep()方法是使線程停止一段時間的方法。在sleep 時間間隔期滿后,線程不一定立即恢復(fù)執(zhí)行。

        這是因為在那個時刻,其它線程可能正在運行而且沒有被調(diào)度為放棄執(zhí)行,除非(a)"醒來"的線程具有更

        高的優(yōu)先級 (b)正在運行的線程因為其它原因而阻塞。

        wait()是線程交互時,如果線程對一個同步對象x 發(fā)出一個wait()調(diào)用,該線程會暫停執(zhí)行,被調(diào)對

        象進入等待狀態(tài),直到被喚醒或等待時間到。

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

        在java里面數(shù)組沒有l(wèi)ength()這個方法,有l(wèi)ength的屬性。String有有l(wèi)ength()這個方法。在c#數(shù)組和string只有l(wèi)ength屬性,沒有方法.

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

        1 Error表示系統(tǒng)級的錯誤和程序不必處理的異常,

        Exception表示需要捕捉或者需要程序進行處理的異常。

        2 error 表示恢復(fù)不是不可能但很困難的情況下的一種嚴重問題。比如說內(nèi)存溢出。不可能指望程序能處理這樣的情況。

        exception 表示一種設(shè)計或?qū)崿F(xiàn)問題。也就是說,它表示如果程序運行正常,從不會發(fā)生的情況。

        15、List, Set, Map是否繼承自Collection接口?

        List,Set是 ,Map不是

        16、是否可以繼承String類?

        String類是final類故不可以繼承。

        17、 構(gòu)造器Constructor是否可被override?

        不能重寫 Overriding,但可以被重載Overloading。

        18、 try {}里有一個return語句,那么緊跟在這個try后的finally {}里的code會不會被執(zhí)行,什么時候被

        執(zhí)行,在return前還是后?

        會執(zhí)行,在return前執(zhí)行。

        19、用最有效率的方法算出2乘以8等於幾?

        2 << 3

        20、作用域public,private,protected,以及不寫時的區(qū)別

        區(qū)別如下:

        作用域當前類同一package 子孫類 其他package

        public √ √ √ √

        protected √ √ √ ×

        friendly √ √ × ×

        private √ × × ×

        不寫時默認為friendly

        21、 abstract class和interface有什么區(qū)別?

        聲明方法的存在而不去實現(xiàn)它的類被叫做抽象類(abstract class),它用于要創(chuàng)建一個體現(xiàn)某些基本行

        為的類,并為該類聲明方法,但不能在該類中實現(xiàn)該類的情況。不能創(chuàng)建abstract 類的實例。然而可以

        創(chuàng)建一個變量,其類型是一個抽象類,并讓它指向具體子類的一個實例。不能有抽象構(gòu)造函數(shù)或抽象靜態(tài)

        方法。Abstract 類的子類為它們父類中的所有抽象方法提供實現(xiàn),否則它們也是抽象類為。取而代之,

        在子類中實現(xiàn)該方法。知道其行為的其它類可以在類中實現(xiàn)這些方法。

        接口(interface)是抽象類的變體。在接口中,所有方法都是抽象的。多繼承性可通過實現(xiàn)這樣

        的接口而獲得。接口中的所有方法都是抽象的,沒有一個有程序體。接口只可以定義static final成員變

        量。接口的實現(xiàn)與子類相似,除了該實現(xiàn)類不能從接口定義中繼承行為。當類實現(xiàn)特殊接口時,它定義(

        即將程序體給予)所有這種接口的方法。然后,它可以在實現(xiàn)了該接口的類的任何對象上調(diào)用接口的方法

        。由于有抽象類,它允許使用接口名作為引用變量的類型。通常的動態(tài)聯(lián)編將生效。引用可以轉(zhuǎn)換到接口

        類型或從接口類型轉(zhuǎn)換,instanceof 運算符可以用來決定某對象的類是否實現(xiàn)了接口

        22、ArrayList和Vector的區(qū)別,HashMap和Hashtable的區(qū)別

        答:就ArrayList與Vector主要從二方面來說.

        一.同步性:Vector是線程安全的,也就是說是同步的,而ArrayList是線程序不安全的,不是同步的

        二.數(shù)據(jù)增長:當需要增長時,Vector默認增長為原來一培,而ArrayList卻是原來的一半

        就HashMap與HashTable主要從三方面來說。

        一.歷史原因:Hashtable是基于陳舊的Dictionary類的,HashMap是Java 1.2引進的Map接口的一個實

        現(xiàn)

        二.同步性:Hashtable是線程安全的,也就是說是同步的,而HashMap是線程序不安全的,不是同步

        的

        三.值:只有HashMap可以讓你將空值作為一個表的條目的key或value

        23、 char型變量中能不能存貯一個中文漢字?為什么?

        是能夠定義成為一個中文的,因為java中以unicode編碼,一個char占16個字節(jié),所以放一個中文是沒問題的

        24、 float型float f=3.4是否正確?

        答:不正確。精度不準確,應(yīng)該用強制類型轉(zhuǎn)換,如下所示:float f=(float)3.4

        STRING與STRINGBUFFER的區(qū)別。

        答:STRING的長度是不可變的,STRINGBUFFER的長度是可變的。如果你對字符串中的內(nèi)容經(jīng)常進行操

        作,特別是內(nèi)容要修改時,那么使用StringBuffer,如果最后需要String,那么使用StringBuffer的toString()方法.

        25、 說出ArrayList,Vector, LinkedList的存儲性能和特性

        ArrayList和Vector都是使用數(shù)組方式存儲數(shù)據(jù),此數(shù)組元素數(shù)大于實際存儲的數(shù)據(jù)以便增加和插

        入元素,它們都允許直接按序號索引元素,但是插入元素要涉及數(shù)組元素移動等內(nèi)存操作,所以索引數(shù)據(jù)

        快而插入數(shù)據(jù)慢, Vector由于使用了synchronized方法(線程安全),通常性能上較ArrayList差,而

        LinkedList使用雙向鏈表實現(xiàn)存儲,按序號索引數(shù)據(jù)需要進行前向或后向遍歷,但是插入數(shù)據(jù)時只需要記

        錄本項的前后項即可,所以插入速度較快。

        繼承時候類的執(zhí)行順序問題,以下代碼顯示什么結(jié)果。

        父類:public class FatherClass {

        public FatherClass() {

        System.out.println("FatherClass Create"); }

        }

        子類: import FatherClass;

        public class ChildClass extends FatherClass {

        public ChildClass() {

        System.out.println("ChildClass Create"); }

        public static void main(String[] args) {

        FatherClass fc = new FatherClass();

        ChildClass cc = new ChildClass(); }

        } //執(zhí)行java ChildClass

      【J2EE經(jīng)典面試試題及答案】相關(guān)文章:

      J2EE經(jīng)典面試題及答案08-08

      J2EE面試題及答案「精選」09-20

      2016年J2EE面試題及答案「精選」06-04

      關(guān)于J2EE MVC方面的面試題及答案07-08

      J2EE筆試題目及答案10-23

      2016年J2EE認證試題(附答案)08-16

      J2EE框架面試題庫11-03

      2016年J2EE認證測試題及答案09-27

      微軟面試題及答案06-07

      java面試題及答案11-01

      主站蜘蛛池模板: 在线一区二区三区视频观看| 亚洲大片免费播放地址| 日韩亚洲国产av自拍| 一区二区三区在线高清视频| 栖霞市| 青青青在线观看视频免费播放| 国产成社区在线视频观看| 亚洲av日韩av一卡二卡| 景德镇市| 亚洲国产欧美久久香综合| 亚洲一区二区精品在线看| 无码AV无码免费一区二区| 久久久高清免费视频| 临泽县| 国产亚洲精品久久麻豆| 亚洲aⅴ久久久噜噜噜噜| 蜜桃一区二区三区高清 | 巴林左旗| 一本一道AⅤ无码中文字幕| 在线观看一区二区女同| 人妻丰满少妇一二三区| 黄色激情视频一区二区| 粉嫩蜜臀av一区二区三区| 在线免费不卡av网站一区| 成人综合久久精品色婷婷| 青青草针对华人超碰在线| 国产一级黄色av影片| 一区二区丝袜美腿视频| 久久综合给合久久97色| 国产美女久久久亚洲综合| 精品亚洲人伦一区二区三区| 仙居县| 一区视频在线观看免费播放.| 日本中出熟女一区二区| 中文字幕亚洲好看有码| 宁陵县| 锦州市| 亚洲AV秘 无码一区二区久久| 一区二区三区午夜视频在线观看| 亚洲av日韩av一卡二卡| 亚洲中文字幕在线精品一区|