1. 程式人生 > >2018年網易Java筆試題

2018年網易Java筆試題

特性 stat 歷史 是否 構造方法 final類 sdl 最終 子類

2018年網易Java筆試題

  1. OOP三特性

封裝:

繼承:

多態:

  1. Java中如何實現多繼承

實現多個接口

使用內部類

  1. Java對象生成過程

4.HashTable和HashMap的區別

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

ü 同步性:Hashtable是同步的,這個類中的一些方法保證了Hashtable中的對象是線程安全的,而HashMap則是異步的,因此HashMap中的對象並不是線程安全的,因為同步的要求會影響執行的效率,所以你不需要線程安全的集合,那麽使用HashMap是一個很好的選擇,這樣可以避免由於同步帶來的不必要的性能的開銷,從而提高效率

ü 值:HashMap可以存入空值作為key或value,Hashtable則不行!

5.接口的成員域具有什麽屬性

必須是public 類型的

6.經常使用的三種設計模式,畫出UML圖,並寫出Java代碼

7.final、finally、finalize的區別

final關鍵字
先看看final關鍵字,它可以被用於以下幾個地方:
1、修飾屬性、局部變量、方法參數:
如果final修飾的是一個基本類型,就表示這個變量所賦予的值不可修改,即它是個常量;如果final修飾的是一個對象,就表示這個變量被賦予的引用不可修改

2、修飾方法:
被final修改的方法不能被覆寫。

3、修飾類
final類不允許被繼承(如果String類),編譯器在處理時把它的所有方法都當作final的(但數據成員既可以是final,也可以不是,以定義時前面修飾為準),因此final類比普通類擁有更高的效率:

finally關鍵字
finally關鍵字用在try/catch語句最末,表示不管是否拋出異常,finally塊中的語句最終肯定、一定會被執行

finalize關鍵字
finalize()是Object類的一個方法,finalize()方法是GC(garbage collector)運行機制的一部分,由對象的垃圾回收器調用此方法,當一個對象被回收時,finalize()方法將會被調用。

8.SOAP、WSDL、UDDI的作用

9.Java輸入輸出流的兩種類型是什麽

10.ArrayList如何實現自定義的排序

11.下列代碼如何優化

public String test(String s1,String s2)

{

String s = s1;

s+=s2;

return s;

}

(代碼非原題,應是String到StringBuffer的優化)

12.寫出一個JSP/Servlet,實現傳入A和B,計算A*B,並顯示結果

常見面試題整理:

① .抽象類和接口的區別

  1. 接口是公開的,裏面不能有私有的方法或變量,接口不能繼承其他的類,只能實現其他的接口,子類一定要實現接口裏面的所有的方法,接口裏面的方法都是抽象的。

而抽象類是可以有是有的方法或變量的,實現抽象類可以有選擇地重寫需要用到的方法,但是必須實現裏面所有的抽象方法,抽象類裏面可以有非抽象方法,子類同樣要實現抽象類裏面的所有的抽象方法。

    1. 接口中定義的變量只能是public static final 型,且必須給其初值,所以實現類中不能重新定義,也不能改變其值。
      抽象類中的變量可定義public private等型,其值可以在子類中重新定義,也可以重新賦值。
    2. 抽象類可以有構造方法,而接口則沒有

2018年網易Java筆試題