1. 程式人生 > >java面試常考題目總結

java面試常考題目總結

幾個月的校招,終於面試可以面不改色,剛開始去面試的時候,每次問問題,以前學的東西都淡忘的差不多了,惡補基礎知識。下面是我總結的一些常考題目。

  1. java和javac的作用:javac 是將java原始檔編譯為class位元組碼檔案,如javac HelloWorld.java。執行javac命令後,如果成功編譯沒有錯誤的話,會出現一個HelloWorld.class的檔案。java 可以執行class位元組碼檔案,如 java HelloWorld.
  2. java內建資料型別:
    (1).八種基本型別:
    int  32位
    long  64位
    short 16位
    float  32位
    double  64位
    boolean 布林型
    byte   8位
    char 字元型
     (2)引用型別
    物件 陣列 (預設值都是null ).

  3. List 介面及其實現類--ArrayList
    List:元素有序並且可以重複的集合;
    List可以精確的控制每個元素的插入位置,或刪除某個元素的位置;
    ArrayList--陣列序列,是List的一個重要實現類;
    ArrayList底層是由陣列實現的;
    add()新增資料
    remove() 刪除資料

    Set 介面:無序且不可重複
    size()獲取介面長度方法
    hashmap:鍵值對型別

  4. 方法的過載與重寫:方法過載是指在一個類中,多個方法的方法名相同,但是引數列表不同。引數列表不同指的是引數個數、引數型別或者引數的順序不同。方法的重寫是指繼承中子類可以定義新的特徵,當子類需要修改父類的一些方法進行擴充套件,增大功能。具體的過載與重寫規則比較多,讀者可自行檢視具體文章。

  5. java三大特性:封裝,繼承,多型。

  6. static :Java 中被 static 修飾的成員稱為靜態成員或類成員。它屬於整個類所有,而不是某個物件所有,即被類的所有對所共享。靜態成員可以使用類名直接訪問,也可以使用物件名進行訪問。
    使用 static 可以修飾變數、方法和程式碼塊。

  7. servlet生命週期:
    1、初始化階段,呼叫init()方法
    2、相應客戶端請求,呼叫service方法,根據提交方式
    選擇執行doGet()或者doPost()方法
    3、終止階段,呼叫destroy()方法

  8. abstract 抽象類:
    抽象方法不需要實現,沒有方法體,直接以分號結束;
    包含抽象方法的類是抽象類
    抽象類可以包含普通的方法,也可以沒有抽象方法
    抽象類不能直接建立,可以定義引用變數。

  9. 介面:
    類是一種具體實現體,而介面定義了某一批類所需要遵
    守的規範,介面不關心這些類的內部資料,也不關心這
    些類裡方法的實現細節,它只規定這些類裡必須提供某
    些方法。
    介面定義關鍵字用interface
    介面中的屬性是常量,預設為public static final 
    實現介面用implements關鍵字,java中一個類只能繼承
    一個父類,是不夠靈活的,通過實現多個介面可以做補
    充,用“,”隔開多個介面。繼承父類在介面之前。

  10. 執行緒:實現執行緒的方法有:(1)通過實現 Runnable 介面;(2)通過繼承 Thread 類本身;(3)通過 Callable 和 Future 建立執行緒。執行緒和程序的區別:程序是程式的一次執行,而執行緒是指程序內的一個執行單元,也是程序內的可排程實體.與程序的區別:(1)地址空間:程序內的一個執行單元;程序至少有一個執行緒;它們共享程序的地址空間;而程序有自己獨立的地址空間;(2)程序是資源分配和擁有的單位,同一個程序內的執行緒共享程序的資源(3)執行緒是處理器排程的基本單位,但程序不是.(4)二者均可併發執行.

也可能會問寫函式方面的知識,比如:equil()和=的區別;陣列初始化的方法等。很多小的方面沒有寫上,還有更深層次的模式,框架,但是我都沒用過,看了也不太懂,就不擺弄了,歡迎各位同學轉載,補充。