<rt id="bn8ez"></rt>
<label id="bn8ez"></label>

  • <span id="bn8ez"></span>

    <label id="bn8ez"><meter id="bn8ez"></meter></label>

    vista

    回顧※展望                     潛心技術(shù)&&不再擱淺

      BlogJava :: 首頁 :: 聯(lián)系 :: 聚合  :: 管理
      12 Posts :: 1 Stories :: 13 Comments :: 0 Trackbacks
    這個知識點不多,但屬于java的高級技術(shù),相信熟悉SPRING的朋友對它一定不會陌生,今天花了點時間對java的動態(tài)代理進行了學(xué)習(xí),感覺還可以,因為是結(jié)合spring來看的,所以練習(xí)的是面向接口的代理模式,但應(yīng)該也是最常用的動態(tài)代理..,廢話不多說,看例子:
    package?org.diego;

    public?interface?Ip?{
    ????
    public?void?say();
    }


    實現(xiàn)類:
    package?org.diego;

    public?class?P?implements?Ip{
    ????
    public?void?say(){
    ????????System.out.println(
    "hello");
    ????}

    }


    代理類:

    package?org.diego;

    import?java.lang.reflect.InvocationHandler;
    import?java.lang.reflect.Method;

    class?TraceHandler?implements?InvocationHandler?{
    ????
    private?Object?target;

    ????
    public?TraceHandler(Object?t)?{
    ????????target?
    =?t;
    ????}


    ????
    public?Object?invoke(Object?proxy,?Method?method,?Object[]?args)?throws?Throwable?{
    ????????
    //?TODO?Auto-generated?method?stub
    ????????if?(method.getName().startsWith("say"))?{
    ????????????System.out.println(
    "hello,before?method");
    ????????????Object?result?
    =?method.invoke(target,?args);
    ????????????System.out.println(
    "World,after?method");
    ????????????
    return?result;
    ????????}

    ????????
    return?null;
    ????????
    ????}

    }


    測試類:
    /*
    ?*?@author?diego.liu
    ?*?@contact?vista.lbw@gmail.com
    ?*?@date?2006-11-7
    ?
    */

    package?org.diego;

    import?java.lang.reflect.InvocationHandler;
    import?java.lang.reflect.Proxy;

    public?class?ProxyTest?{

    ????
    public?static?void?main(String[]?args)?{
    ????????P?test?
    =?new?P();
    ????????InvocationHandler?handler?
    =?new?TraceHandler(test);
    ????????Ip?proxy?
    =?(Ip)?Proxy.newProxyInstance(test.getClass().getClassLoader(),?test.getClass().getInterfaces(),
    ????????????????handler);
    ????????proxy.say();
    ????}


    }


    已經(jīng)測試可以運行,歡迎拍磚。。。
    posted on 2006-11-07 18:14 Vista 閱讀(1668) 評論(0)  編輯  收藏 所屬分類: java基礎(chǔ)
    主站蜘蛛池模板: 国产精品国产自线拍免费软件| 久久精品国产大片免费观看| 在线免费观看色片| 亚洲一级毛片在线观| 中文免费观看视频网站| 亚洲国产美女视频| 亚洲视频免费播放| 亚洲欧洲日产国码www| 97公开免费视频| 亚洲国产精品久久人人爱| 亚洲一区免费在线观看| 亚洲国产成AV人天堂无码| 狼群影院在线观看免费观看直播| 亚洲日本香蕉视频观看视频| 1000部国产成人免费视频| 2020天堂在线亚洲精品专区| 永久免费看mv网站入口| 亚洲AV无码一区二区三区鸳鸯影院| 国产片免费在线观看| 亚洲免费日韩无码系列| 香蕉视频在线观看亚洲| 最近中文字幕mv免费高清视频8| 97se亚洲国产综合自在线| 国产不卡免费视频| 成人A毛片免费观看网站| 亚洲免费视频在线观看| 无码专区永久免费AV网站| 国产亚洲情侣久久精品| 亚洲一区无码中文字幕| 67194成手机免费观看| 亚洲国产精品无码久久| 久久久久亚洲精品中文字幕| 亚洲电影免费在线观看| 在线亚洲午夜片AV大片| 国产亚洲精aa成人网站| 91短视频免费在线观看| 男男gay做爽爽的视频免费| 婷婷精品国产亚洲AV麻豆不片| 毛片免费观看网站| 中文在线免费不卡视频| 亚洲色www永久网站|