最新java程序員面試題及答案
java程序員面試時都需要做一些試題,這是爲了讓招聘者對面試者的知識掌握程度以及能力的初步瞭解。下面是小編整理的最新java程序員面試題及答案,希望對您有所幫助!
第一,談談final, finally, finalize的區別。
final?修飾符(關鍵字)如果一個類被聲明爲final,意味着它不能再派生出新的子類,不能作爲父類被繼承。因此一個類不能既被聲明爲 abstract的,又被聲明爲 final的。將變量或方法聲明爲final,可以保證它們在使用中不被改變。被聲明爲final的變量必須在聲明時給定初值,而在以後的引用中只能讀取,不可修改。被聲明爲final的方法也同樣只能使用,不能重載finally?再異常處理時提供 finally 塊來執行任何清除操作。如果拋出一個異常,那麼相匹配的 catch 子句就會執行,然後控制就會進入 finally 塊(如果有的話)。
finalize?方法名。Java 技術允許使用 finalize()方法在垃圾收集器將對象從內存中清除出去之前做必要的清理工作。這個方法是由垃圾收集器在確定這個對象沒有被引用時對這個對象調用的。它是在 Object 類中定義的,因此所有的類都繼承了它。子類覆蓋 finalize() 方法以整理系統資源或者執行其他清理工作。 finalize() 方法是在垃圾收集器刪除對象之前對這個對象調用的。
第二,Anonymous Inner Class (匿名內部類) 是否可以extends(繼承)其它類,是否可以implements(實現)interface(接口)?
匿名的內部類是沒有名字的內部類。不能extends(繼承) 其它類,但一個內部類可以作爲一個接口,由另一個內部類實現。
第三,Static Nested Class 和 Inner Class的不同,說得越多越好(面試題有的很籠統)。
Nested Class (一般是C++的說法),Inner Class (一般是JAVA的說法)。Java內部類與C++嵌套類最大的不同就在於是否有指向外部的引用上。具體可見http: // 1
注: 靜態內部類(Inner Class)意味着1創建一個static內部類的對象,不需要一個外部類對象,2不能從一個static內部類的一個對象訪問一個外部類對象
第四,&和&&的區別。
&是位運算符。&&是布爾邏輯運算符。
第五,HashMap和Hashtable的區別。
都屬於Map接口的類,實現了將惟一鍵映射到特定的值上。
HashMap 類沒有分類或者排序。它允許一個 null 鍵和多個 null 值。
Hashtable 類似於 HashMap,但是不允許 null 鍵和 null 值。它也比 HashMap 慢,因爲它是同步的。
第六,Collection 和 Collections的區別。
Collections是個下的類,它包含有各種有關集合操作的靜態方法。
Collection是個下的接口,它是各種集合結構的父接口。
第七,什麼時候用assert。
斷言是一個包含布爾表達式的語句,在執行這個語句時假定該表達式爲 true。如果表達式計算爲 false,那麼系統會報告一個 AssertionError。它用於調試目的:
assert(a > 0); // throws an AssertionError if a <= 0
斷言可以有兩種形式:
assert Expression1 ;
assert Expression1 : Expression2 ;
Expression1 應該總是產生一個布爾值。
Expression2 可以是得出一個值的任意表達式。這個值用於生成顯示更多調試信息的 String 消息。
斷言在默認情況下是禁用的`。要在編譯時啓用斷言,需要使用 source 1.4 標記:
javac -source 1.4
要在運行時啓用斷言,可使用 -enableassertions 或者 -ea 標記。
要在運行時選擇禁用斷言,可使用 -da 或者 -disableassertions 標記。
要系統類中啓用斷言,可使用 -esa 或者 -dsa 標記。還可以在包的基礎上啓用或者禁用斷言。
可以在預計正常情況下不會到達的任何位置上放置斷言。斷言可以用於驗證傳遞給私有方法的參數。不過,斷言不應該用於驗證傳遞給公有方法的參數,因爲不管是否啓用了斷言,公有方法都必須檢查其參數。不過,既可以在公有方法中,也可以在非公有方法中利用斷言測試後置條件。另外,斷言不應該以任何方式改變程序的狀態。
第八,GC是什麼? 爲什麼要有GC? (基礎)。
GC是垃圾收集器。Java 程序員不用擔心內存管理,因爲垃圾收集器會自動進行管理。要請求垃圾收集,可以調用下面的方法之一:
相關文章
-
Java程序員面試題及答案
JAVA程序員廣義上是指一羣以JAVA爲謀生手段的軟件開發人員。狹義的說,是指擁有SUN公司JAVA認證的程序員。下面是小編整理的關於Java程序員面試題及答案,歡迎大家參考!1、面向對象的特徵有哪些方面?答:面向對象的特徵主要 -
Java程序員集合框架面試題及答案
Java集合框架是最常被問到的Java面試問題,要理解Java技術強大特性,就有必要掌握集合框架。這裏有一些實用問題,常在Java面試中問到。 1. 什麼是Java集合APIJava集合框架API是用來表示和操作集合的統一框架,它包含接口 -
java程序員面試考試題及答案
光陰迅速,一眨眼就過去了,又將迎來新的工作,新的挑戰,該好好計劃一下接下來的工作了!你所接觸過的計劃都是什麼樣子的呢?下面是小編收集整理的九年級語文上冊的教學計劃,僅供參考,大家一起來看看吧。九年級語文上冊的教學計劃11. -
2017年Java程序員面試題及答案
Sun 認證Java程序員考試內容涉及Java所有相關知識、編程概念及applet開發技巧。以下是關於Java程序員面試題及答案,希望大家認真閱讀!第一,談談final, finally, finalize的區別。final?修飾符(關鍵字)如果一個類被聲明爲f -
SUN認證Java2程序員考試題及答案
Java帶給你的並不僅僅是面向對象、開放、平臺無關、易用、安全和Write once, run anywhere等軟件開發方面的優勢,更重要的一點是,它提供了一種新穎的表達思想的方式,一種全新的思維模式。下面一起來看看Java2程序員考試 -
最新java面試題及答案
Java的數據類型與 機器無關,Java虛擬機(Java Virtual Machine)是建立在硬件和操作系統之上,實現Java二進制代碼的解釋執行功能, 提供於不同平臺的接口的。下面是小編收集的關於java面試題及答案,希望大家認真閱讀!1、面向 -
2017年初級java程序員筆試題及答案
程序員需要理解一個模塊的需求,很多程序員寫程序往往只關注一個功能需求,他們把性能指標全部歸結到硬件,操作系統和開發環境上,而忽視了本身代碼的性能考慮,性能需求指標中。下面是小編整理的關於初級java程序員筆試題及答 -
2017年最新java面試題及答案
Java具有簡單性、面向對象、分佈式、健壯性、安全性、平立與可移植性、多線程、動態性等特點。下面是小編整理的關於最新java面試題及答案,歡迎大家試題!最新前端工程師面試題一、問答題(共兩題每題5分)1、在軟件開發 -
2017年SUN-Java程序員認證考試題庫及答案
按照中組部《關於印發〈中國共產黨黨員組織關係介紹信〉修訂式樣的通知》(組通字〔XX〕45號)的規定,各機關黨組織須使用新的組織關係介紹信。在填寫和使用中,應注意以下問題:?1、黨員組織關係介紹信一式三聯,每聯右上角的 -
JAVA程序員面試題
以下是本站小編整理的JAVA程序員面試題,歡迎學習!希望在您的求職中可以帶來一些幫助!更多內容請關注應屆畢業生考試網! Hibeate持久層技術1、在myeclipse加入hibeate環境的全過程是什麼?2、hibeate的核心配置文件是