亚洲精品中文字幕无乱码_久久亚洲精品无码AV大片_最新国产免费Av网址_国产精品3级片

JAVA認證

JAVA高級工程師筆試題及答案

時間:2024-08-30 21:29:37 文圣 JAVA認證 我要投稿
  • 相關(guān)推薦

JAVA高級工程師筆試題及答案

  Java可以編寫桌面應用程序、Web應用程序、分布式系統(tǒng)和嵌入式系統(tǒng)應用程序等。下面是小編收集的JAVA高級工程師筆試題及答案,歡迎大家參考!

JAVA高級工程師筆試題及答案

  JAVA高級工程師筆試題及答案

  1、abstractclass和interface的區(qū)別?

  抽象類可以有私有方法和變量,接口中不能有私有方法和變量。

  抽象類可以有方法的實現(xiàn),接口中不能有方法的實現(xiàn)并且所以的方法都需要實現(xiàn)。

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

  Finally代碼塊中的語句是必須執(zhí)行的,必須在try代碼塊執(zhí)行完之后執(zhí)行,在return語句后執(zhí)行。除非代碼塊中有System.exit();方法,因為終止了虛擬機進程,會不執(zhí)行。

  3、int和Integer有什么區(qū)別?

  Java中提供了兩種不同類型:引用類型和原始類型。Int是原始類型,Integer是int的封裝類型。

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

  ArrayList和Vector是按數(shù)組的方式存儲數(shù)據(jù)的,此數(shù)組的元素大于實際存儲的數(shù)據(jù),以便于增加和插入元素,它們允許數(shù)組按序號索引元素,由于插入數(shù)據(jù)時涉及到移動等內(nèi)存操作,所以索引數(shù)據(jù)快而插入數(shù)據(jù)慢。Vector由于使用了synchroinzed(安全性),通常性能上較ArrayList差。LinkedList使用雙向鏈表實現(xiàn)存儲,按索引序號前向或后向遍歷,插入數(shù)據(jù)時只需要記錄本項的前后項即可,所以插入數(shù)據(jù)速度較快。

  5、描述一下JVM加載class文件的原理機制?

  Java中所有的類必須加裝到jvm中才能運行,這個工作是由jvm中的類裝載器完成的,類裝載器所作工作實質(zhì)是把類文件讀取到內(nèi)存當中。

  6、STRING與STRINGBUFFER的區(qū)別?

  String在追加內(nèi)容的時候不會在原有的內(nèi)存區(qū)域中追加內(nèi)容,而是在內(nèi)存中分配一塊內(nèi)存區(qū)域存放追加內(nèi)容,StringBuffer不會。

  7、List、Map、Set三個接口,存取元素時,各有什么特點?

  List以特定順序來持有元素,元素可重復。

  Set在內(nèi)部排序,不允許有重復元素。

  Map保存key-value值,value可有多個值。

  8、談談final,finally,finalize的區(qū)別

  Final可以修飾變量、方法、類。被final修飾的變量必須初始化并且不能被修改。被final修飾的方法不能被重載。被final修飾的類不能被繼承,final不能和abstract同時修飾。Finally是在異常處理是提供的,如果拋出異常,那么相匹配的catch子句就會執(zhí)行,然后控制就會進入finally中。

  Java允許finalize()方法在垃圾收集器將對象從內(nèi)存中清除出去之前做垃圾清理工作。這個方法是垃圾收集器在確定對象沒有被引用時調(diào)用的。Finalize()方法是在刪除這個對象之前對這個對象調(diào)用的。

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

  Sleep()是線程類Thread方法,導致該線程在指定的時間內(nèi)暫停,指定時間之后會自動恢復,該方法不會釋放對象鎖。

  Wait()是Object類的方法,調(diào)用該方法是線程會進入等待狀態(tài),直到調(diào)用notify或notfyall方法通知恢復狀態(tài),該方法會釋放對象鎖。

  10、GC是什么?為什么要有GC?

  GC是java提供的垃圾回收器。

  有了GC就不需要程序員人工去釋放內(nèi)存空間,當虛擬機發(fā)現(xiàn)內(nèi)存空間緊張時會自動的去清理一些無用變量所占用的內(nèi)存空間。程序員也可以調(diào)用System.gc();強制執(zhí)行一次清理。

  JAVA筆試題

  1、在java中如果聲明一個類為final,表示什么意思?

  答:final是最終的意思,final可用于定義變量、方法和類但含義不同,聲明為final的類不能被繼承。

  2、父類的構(gòu)造方法是否可以被子類覆蓋(重寫)?

  答:父類的構(gòu)造方法不可以被子類覆蓋,因為父類和子類的類名是不可能一樣的。

  3、請講述String 和StringBuffer的區(qū)別。

  答:String 類所定義的對象是用于存放“長度固定”的字符串。

  StringBuffer類所定義的對象是用于存放“長度可變動”的字符串。

  4、如果有兩個類A、B(注意不是接口),你想同時使用這兩個類的功能,那么你會如何編寫這個C類呢?

  答:因為類A、B不是接口,所以是不可以直接繼承的,但可以將A、B類定義成父子類,那么C類就能實現(xiàn)A、B類的功能了。假如A為B的父類,B為C的父類,此時C就能實現(xiàn)A、B的功能。

  5、結(jié)合Java視頻Lesson5(多線程),分析sleep()和wait()方法的區(qū)別。

  答: Sleeping睡眠的意思 : sleep() 方法用來暫時中止執(zhí)行的線程。在睡眠后,線程將進入就緒狀態(tài)。

  waiting等待的意思: 如果調(diào)用了 wait() 方法,線程將處于等待狀態(tài)。用于在兩個或多個線程并發(fā)運行時。

  6、談談你對抽象類和接口的理解。

  答:定義抽象類的目的是提供可由其子類共享的一般形式、子類可以根據(jù)自身需要擴展抽象類、抽象類不能實例化、抽象方法沒有函數(shù)體、抽象方法必須在子類中給出具體實現(xiàn)。他使用extends來繼承。

  接口:一個接口允許一個類從幾個接口繼承而來,Java 程序一次只能繼承一個類但可以實現(xiàn)幾個接口,接口不能有任何具體的方法,接口也可用來定義可由類使用的一組常量。其實現(xiàn)方式是interface來實現(xiàn)。

【JAVA高級工程師筆試題及答案】相關(guān)文章:

2023計算機二級java考試上機模擬試題及答案02-03

photoshop試題「附答案」01-09

管理溝通試題及答案02-08

情商測試題及答案02-03

CAD基礎試題附答案07-17

營養(yǎng)師試題及答案03-09

excel試題2023「附答案」09-12

iq測試題及答案08-07

CAD練習試題「附答案」07-17

cad考試簡答試題及答案06-26