Java筆試面試每日打卡(2) -基礎篇

題目

–來自《Java程序員面試寶典》

  1. 什麼是反射機制
  2. package有什麼作用
  3. 如何實現C語言的函數指針功能
  4. 面向對象和麪向過程有什麼區別
  5. 面向對象主要有哪些特徵
  6. 面向對象的開發方式有什麼優點
  7. 什麼是繼承
  8. 組合和繼承有什麼區別
  9. 多態的實現機制是什麼
  10. 重載和覆蓋有什麼區別

題目和答案

  1. 什麼是反射機制
    答:反射是Java提供的一種可以動態的獲取運行中對象的狀態及屬性的機制。這種機制可以在程序運行時動態的獲取對象的當前的類,成員,方法,並且可以動態的創建類的對象。
  2. package有什麼作用
    答:通過package可以將類進行一個歸類劃分,提高層次結構,使開發更方便。
  3. 如何實現類似C語言的函數指針功能
    答:C語言可以通過指針的不同來對回調函數的參數進行自定義,而Java採用接口多種實現來實現相應功能
  4. 面向對象與面向過程的不同
    答:
  5. 面向對象的特徵
    答:抽象,繼承,多態,封裝。(1)抽象:忽略當前主題與目標無關屬性,充分注意與目標有關的方面;(2)繼承:爲了提高類的重用性,使用一個子類對父類的方法進行重用,並可以對已有的父類進行一個完善和拓展。(3)多態是不同類的對象對同一消息作出響應。(4)封裝是將客觀事物抽象成類,每個類對自身數據的保護和權限管理。
  6. 面向對象的開發方式有什麼優點
    答:(1)較高開發效率 ; (2)保證軟件的魯棒性; (3)可維護性
  7. 什麼是繼承
    答:繼承就是爲了提高代碼的可重用性而設計的。子類通過繼承父類達到對父類的一些成員及方法的重用。繼承使用關鍵字 extends 實現。Java不支持多繼承。子類可以重寫父類的public,protected 方法。子類與父類有同名的變量或者方法會進行覆蓋。
  8. 組合和繼承
    答:組合是has-a的關係,繼承是is-a的關係,比如 雞和雞毛,組合關係。雞和動物是 繼承關係。能用組合儘量使用組合關係。
  9. 多態的實現機制
    答:(1)通過方法的重載,一個房子多可以有多個入口。(2) 覆蓋。子類同名方法對父類方法的覆蓋。爸爸的卡車和兒子的小轎車。
  10. 重載和覆蓋的區別
    答:重載是同名方法對不同參數的不同體現,覆蓋是不同類的不同表現。重載比如這是一個車輛加工廠,將不同的車放入會進行不同的處理。而覆蓋表示爸爸的加工廠加工的是小轎車,兒子的與爸爸同名加工廠加工的是大卡車。
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章