JAVA面試題(15)

本文首發於cartoon的博客java

  • 什麼是反射?git

    • 主要指程序能夠訪問、檢測和修改它自己狀態或行爲的一種能力
    • JAVA反射機制提供:github

      • 在運行時判斷任意一個對象所屬的類
      • 在運行時任意構造任意類的對象
      • 在運行時判斷任意一個類所具備的成員變量和方法
      • 在運行時調用任意一個對象的方法
  • 什麼是 Java 序列化?什麼狀況下須要序列化?post

    • 序列化是一種用來處理對象流的機制
    • 序列化就是將實現序列化的JAVA對象寫入到IO流中
    • 序列化容許JAVA對象脫離程序單獨存在
    • 傳遞或保存對象時保證對象完整性和傳遞性須要序列化
  • 動態代理是什麼?有哪些應用?代理

    • 動態代理指在運行中動態初始化並加載類,並生成對象的過程
    • 動態代理目的爲其餘對象提供一個代理以控制某個對象的訪問
    • 應用:Spring的AOP、IOC
  • 怎麼實現動態代理?對象

    • 提供業務接口
    • 實現該業務接口
    • 實現InvocationHandler接口,重寫invoke方法,在對象生成的先後插入自身邏輯
    • 調用Method的成員方法invoke生成Object類對象
    • 調用方法使用泛型指定生成Object類的類型,獲得invoke方法返回的具體對象
相關文章
相關標籤/搜索