當前位置:才華齋>計算機>java語言>

java筆試經典練習題及答案

java語言 閱讀(7.32K)

學習猶如登山,有的人則注重最終目標,有的人則注重前進的過程。以下是本站小編整理的java筆試經典練習題及答案,歡迎學習!

java筆試經典練習題及答案

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

答:區別如下:

作用域 當前類 同一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)。子類的物件使用這個方法時,將呼叫子類中的定義,對它而言,父類中的定義如同被"遮蔽"了。如果在一個類中定義了多個同名的方法,它們或有不同的引數個數或有不同的引數型別,則稱為方法的過載(Overloading)。Overloaded的方法是可以改變返回值的型別

13、Set裡的元素是不能重複的,那麼用什麼方法來區分重複與否呢? 是用==還是equals()? 它們有何區別

答:Set裡的元素是不能重複的,那麼用iterator()方法來區分重複與否。equals()是判讀兩個Set是否相等

equals()和==方法決定引用值是否指向同一物件equals()在類中被覆蓋,為的是當兩個分離的物件的內容和型別相配的話,返回真值

14、給我一個你最常見到的runtime exception

答:常見的執行時異常有如下這些ArithmeticException, ArrayStoreException, BufferOverflowException, BufferUnderflowException, CannotRedoException, CannotUndoException, ClassCastException, CMMException, ConcurrentModificationException, DOMException, EmptyStackException, IllegalArgumentException, IllegalMonitorStateException, IllegalPathStateException, IllegalStateException, ImagingOpException, IndexOutOfBoundsException, MissingResourceException, NegativeArraySizeException, NoSuchElementException, NullPointerException, ProfileDataException, ProviderException, RasterFormatException, SecurityException, SystemException, UndeclaredThrowableException, UnmodifiableSetException, UnsupportedOperationException