java筆試題目及答案

才智咖 人氣:1.91W

1、作用域public,private,protected,以及不寫時的區別

java筆試題目及答案

答:區別如下:

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

public √ √ √ √

protected √ √ √ ×

friendly √ √ × ×

private √ × × ×

不寫時預設為friendly

2、Anonymous Inner Class (匿名內部類) 是否可以extends(繼承)其它類,是否可以implements(實現)interface(介面)

答:匿名的內部類是沒有名字的內部類。不能extends(繼承) 其它類,但一個內部類可以作為一個介面,由另一個內部類實現

3、Static Nested Class 和 Inner Class的不同

答:Nested Class (一般是C++的說法),Inner Class (一般是Java的說法)。Java內部類與C++巢狀類最大的不同就在於是否有指向外

部的引用上。注: 靜態內部類(Inner Class)意味著1建立一個static內部類的物件,不需要一個外部類物件,2不能從一個static內

部類的一個物件訪問一個外部類物件

4、&和&&的區別

答:&是位運算子,表示按位與運算,&&是邏輯運算子,表示邏輯與(and)

5、Collection 和 Collections的區別

答:Collection是集合類的上級介面,繼承與他的介面主要有Set 和List.

Collections是針對集合類的一個幫助類,他提供一系列靜態方法實現對各種集合的搜尋、排序、執行緒安全化等操作

6、什麼時候用assert

答:assertion(斷言)在軟體開發中是一種常用的除錯方式,很多開發語言中都支援這種機制。在實現中,assertion就是在程式中的一

條語句,它對一個boolean表示式進行檢查,一個正確程式必須保證這個boolean表示式的值為true;如果該值為false,說明程式已經處

於不正確的狀態下,系統將給出警告或退出。一般來說,assertion用於保證程式最基本、關鍵的正確性。assertion檢查通常在開發和

測試時開啟。為了提高效能,在軟體釋出後,assertion檢查通常是關閉的

7、String s = new String("xyz");建立了幾個String Object

答:兩個,一個字元物件,一個字元物件引用物件

8、d(11.5)等於多少? d(-11.5)等於多少

答: d(11.5)==12;d(-11.5)==-11;round方法返回與引數最接近的長整數,引數加1/2後求其floor

9、short s1 = 1; s1 = s1 + 1;有什麼錯? short s1 = 1; s1 += 1;有什麼錯

答:short s1 = 1; s1 = s1 + 1; (s1+1運算結果是int型,需要強制轉換型別)short s1 = 1; s1 += 1;(可以正確編譯)

10、Java有沒有goto

答:java中的保留字,現在沒有在java中使用

11、陣列有沒有length()這個方法? String有沒有length()這個方法

答:陣列沒有length()這個方法,有length的屬性。String有有length()這個方法

12、Overload和Override的區別。Overloaded的方法是否可以改變返回值的型別

答:方法的重寫Overriding和過載Overloading是Java多型性的不同表現。重寫Overriding是父類與子類之間多型性的一種表現,過載

Overloading是一個類中多型性的一種表現。如果在子類中定義某方法與其父類有相同的名稱和引數,我們說該方法被重寫

(Overriding)。子類的物件使用這個方法時,將呼叫子類中的定義,對它而言,父類中的定義如同被"遮蔽"了。如果在一個類中定義了