1. 程式人生 > >java 反射機制

java 反射機制

選擇 count 語言 用戶 方案 獲取 接口 功能 .cn

一、java反射機制是什麽?

  JAVA反射機制是在運行狀態中,對於任意一個類,都能夠知道這個類的所有屬性和方法;對於任意一個對象,都能夠調用它的任意方法和屬性;這種動態獲取信息以及動態調用對象方法的功能稱為java語言的反射機制。

二、java反射機制的作用?

  主要功能:在運行時判斷任意一個對象所屬的類;在運行時構造任意一個類的對象;在運行時判斷任意一個類所具有的成員變量和方法;在運行時調用任意一個對象的方法;生成動態代理。

三、java反射機制的好處

  java的反射機制就是增加程序的靈活性,避免將程序寫死到代碼裏。

  舉個例子:

  商場a成立之初,指定了三種折扣方案:Counter1、Counter2、Counter3,這三個類Counter1、Counter2、Counter3都實現Counter接口,顧客可以在滿足條件的情況下可以選擇一種折扣方案進行折後付款,那麽不適用放射的情況下我們一般會這樣寫代碼:

    技術分享

    不用放射的情況下,如果商店需要增加一種折扣方案Counter4的話,就需要更改上面的源碼,添加一個case。

  ——————————————————————————————————————————————————————————————————

  使用反射的情況下:

    技術分享

    使用反射的情況下,只要在用戶選擇的時候傳回來一個類名就ok了,不需要更改核心代碼。一般情況下,具體流程是:在把所有的折扣的方案都寫在一個配置文件中,然後讓程序讀取這個配置文件,列出打折方案列表讓用戶選擇。所以每當需要增加一種折扣方案的時候,只需要新建一個折扣類,然後在配置文件中添加這個折扣方案。

java 反射機制