锘??xml version="1.0" encoding="utf-8" standalone="yes"?>
寰楀埌String鐨勫ぇ灝忥紝瑕佺敤length鏂規硶
寰楀埌闆嗗悎錛堟瘮濡侺ist,Set)鐨勫ぇ灝忥紝瑕佷嬌鐢╯ize鏂規硶銆?
闅鵑亾榪欐病鏈夌粰浣犲甫鏉ヤ笉渚垮悧錛?nbsp; 闃呰鍏ㄦ枃
]]>
鍦↗ava涓湁涓涓姩鎬佷唬鐞嗘妧鏈?涓昏閫氳繃Proxy,InvocationHandler鍜孧ethod,榪欎笁涓被(鎺ュ彛)鏉ュ疄鐜?浣嗘槸鏈夊涓嬩竴涓棶棰樹笉澶槑鐧?甯屾湜楂樻墜瑙f儜.
鎴戞煡鐪嬩簡鍑犱釜渚嬪瓙,瀹冧滑瀹炵幇InvocationHandler榪欎釜鎺ュ彛鏃?閮介氳繃鏋勯犲嚱鏁頒紶閫掕繘鍘諱簡,瀹為檯琚唬鐞嗙殑瀵硅薄,鐒跺悗鍦ㄥ疄鐜扮殑鏂規硶涓氳繃method.invoke(obj,args);obj涓烘瀯閫犲嚱鏁頒紶閫掕繘鏉ョ殑瀵硅薄.
姣斿涓嬮潰鐨勪緥瀛?
public class Handler implements InvocationHandler {
聽MethodInterface delegate;
聽public Handler(MethodInterface delegate) {
聽聽this.delegate = delegate;
聽}
聽public Object invoke(Object proxy, Method method, Object[] args)
聽聽聽throws Throwable {
聽聽if (method.getName().equals("say")) {
聽聽聽System.out.print("I have get it");
聽聽}
聽聽return method.invoke(this.delegate, args);聽
聽}
}
鍑芥暟invoke()浼犻掕繘鍘葷殑絎竴涓弬鏁皃roxy灝辨病鏈夎浣跨敤鍒?浣嗗悓鏍峰疄鐜頒簡鍔ㄦ佷唬鐞嗙殑鏁堟灉,鍚庨潰鍙傝冩枃鐚腑鐨勪緥瀛愪篃鏄殑,闅鵑亾鏄繖絎竴涓弬鏁板氨鏄浣欑殑,濡傛灉鏄繖鏍風殑璇?灝辨槸Sun璁劇疆澶辮浜?^__^.
sun鐨勬枃妗f槸榪欐牱瑙i噴榪欎釜鍙傛暟鐨?proxy - the proxy instance that the method was invoked on.浣嗚繖涓弬鏁版湁浠涔堢敤鐨?濡傛灉涓嶄紶閫掍粬榪涙潵,浼氭湁浠涔堜笉渚垮憿.
鏈夋病鏈変漢鑳芥槑鐧借繖鏄庝箞鍥炰簨,鎴栬呮槸鍐欎釜紺轟緥浠g爜,璁茶榪欎釜絎竴涓弬鏁版槸騫插槢鐢ㄧ殑?
聽
聽
娉?闄勪袱涓畬鏁寸殑鍔ㄦ佷唬鐞嗙殑渚嬪瓙
http://blog.csdn.net/hsyj_0001/archive/2006/04/02/647488.aspx
http://www.java2s.com/Code/Java/Development-Class/Demonstratesadynamicproxy.htm