class:所有類的位元組碼檔案
class.forname(全類名);
類名.class;
例項.getclass();
field:getdeclaredfield("");/getdeclaredfields();
修飾符/型別/名稱
method:
獲取:getdeclaredmethod("",引數型別的class...param);/getdeclaredmethods();
注:此時返回型別method
呼叫:invoke(例項,實參值...obj)
注:返回object型別,如果呼叫的方法有返回值,從invoke的返回結果裡取出值;
constructor
例項方法一:
獲得類的構造器:constructor c=類物件.getdeclaredconstructor(引數型別的class...)
呼叫構造器:c.newinstance(實參值...obj); ---獲得該類的例項
例項方法二:
類物件.newinstance(); ---呼叫該類的無參構造器,直接獲得的是該類的例項
baseservice
在service層處理請求中的分發(尋找要呼叫的方法):
頁面發起請求:例,/goods?action=all
在service中接收到goods請求,與現有的位址相匹配,尋找對應的servlet,進入servlet後,具體的業務實現定義在了該servlet中的方法裡
class goodsservice extends baseservice
} class goods2service extends baseservice
} class goods3service extends baseservice
} 定義了乙個所有service的父類baseservice:使用反射方式查詢所請求的servlet中的方法:
Go中反射(reflect)的應用
package main import fmt reflect type monster struct 顯示s的值 func s monster print 返回兩個數的和 func s monster getsum n1,n2 int int 設定s結構體的在 func s monster set...
go語言基礎 反射 reflect
反射reflect struct reflect.typeof i inte ce type 獲取結構體的字段的型別,欄位名 方法的型別,方法的名字 packagemain import fmt reflect typepersonstruct func p person say msg strin...
反射 Reflect 和折射 Refract
brdf 雙向反射分布函式 反射 r 2 n l n l 已知量 n 頂點的法向量 l 入射光向量,如果是平行光就直接用光的方向向量,如果是點光源,就通過光源位置和頂點在世界空間的座標進行計算。未知量 r 反射方向向量 總所周知,我們之所以能看見東西,是因為有光的照射,這說明所有我們所能看的到的顏色...