posts - 325,  comments - 25,  trackbacks - 0
           
          代理模式的作用是:為其他對象提供一種代理以控制對這個對象的訪問。
          在某些情況下,一個客戶不想或者不能直接引用另一個對象,而代理對象可以在客戶端和目標對象之間起到中介的作用
           
          代理模式一般涉及到的角色有
          §抽象角色:聲明真實對象和代理對象的共同接口
          §代理角色:代理對象角色內部含有對真實對象的引用,從而可以操作真實對象,同時代理對象提供與真實對象相同的接口以便在任何時刻都能代替真實對象。同時,代理對象可以在執行真實對象操作時,附加其他的操作,相當于對真實對象進行封裝
          §真實角色:代理角色所代表的真實對象,是我們最終要引用的對象
          例:

          // 抽象角色

          abstract public class Subject

          {

              abstract public void request();

          }

          //真實角色:實現了Subject的request()方法

          public class RealSubject extends Subject
          {

              public RealSubject()
              {
              }

              public void request()
              {
                  System.out.println("From real subject.");
              }

          }

          //代理角色

          public class ProxySubject extends Subject

          {
              private RealSubject realSubject; // 以真實角色作為代理角色的屬性

              public ProxySubject()
              {
              }

              public void request() // 該方法封裝了真實對象的request方法

              {
                  preRequest();

                  if (realSubject == null)
                  {
                      realSubject = new RealSubject();
                  }

                  realSubject.request(); // 此處執行真實對象的request方法

                  postRequest();
              }

              private void preRequest()
              {

                  // something you want to do before requesting

              }

              private void postRequest()
              {

                  // something you want to do after requesting

              }

          }

          //客戶端調用

          public class Client
          {
              public static void main(String[] args)
              {
                  Subject sub = new ProxySubject();

                  sub.request();
              }
          }

          posted on 2008-05-26 08:48 長春語林科技 閱讀(283) 評論(0)  編輯  收藏 所屬分類: java
          <2008年5月>
          27282930123
          45678910
          11121314151617
          18192021222324
          25262728293031
          1234567

           

          長春語林科技歡迎您!

          常用鏈接

          留言簿(6)

          隨筆分類

          隨筆檔案

          文章分類

          文章檔案

          相冊

          收藏夾

          搜索

          •  

          最新評論

          閱讀排行榜

          評論排行榜

          主站蜘蛛池模板: 托克逊县| 体育| 乐陵市| 江西省| 丰都县| 安塞县| 普定县| 叶城县| 延庆县| 巴林左旗| 阿拉善盟| 乳源| 荆州市| 兴化市| 故城县| 偃师市| 万安县| 汉中市| 政和县| 长寿区| 天气| 吉安市| 安西县| 滁州市| 郸城县| 康定县| 宾川县| 巴林左旗| 威海市| 曲靖市| 白银市| 宜川县| 海原县| 申扎县| 韩城市| 饶平县| 邓州市| 二连浩特市| 大姚县| 肇庆市| 盘山县|