zoukankan      html  css  js  c++  java
  • 设计模式之 静态代理

     1 public class Test_5 {
     2     public static void main(String[] args) {
     3         you u=new you();
     4 //        u.happyMarry();
     5         new weddingCompany(u).happyMarry();
     6     }
     7 }
     8 //真实对象:你
     9 class you implements marry{
    10     @Override
    11     public void happyMarry() {
    12         System.out.println("你结婚啦~~~~");
    13     }
    14 }
    15 // 代理对象,婚庆公司
    16 class weddingCompany implements marry{
    17     private you u;  //代理对象需要一个真实对象
    18     public weddingCompany(you u) {
    19         this.u = u;
    20     }
    21     @Override
    22     public void happyMarry() {
    23         before();
    24         u.happyMarry();
    25         after();
    26     }
    27     public void before(){
    28         System.out.println("布置婚礼");
    29     }
    30     public void after(){
    31         System.out.println("给钱~~~");
    32     }
    33 }
    34 // 共同接口:结婚
    35 interface marry{
    36     void happyMarry();
    37 }

    1.描述上述用例:真实对象:你;代理对象:婚庆公司;共同接口:结婚。意义:你在结婚的时候需要委托婚庆公司来辅助你更好地完成结婚这件事。 

    静态代理:需要一个真实对象,一个代理对象,两对象对应的类实现同一个接口。在代理类中真实对象作为属性放在其中。

  • 相关阅读:
    Linux安装phpMywind
    CentOS7安装virtualbox
    MySQL3534
    DIV盒子介绍
    HTML选择器
    人脸检测
    openblas下载安装编译
    DeepLearning网络设计总结
    Linux命令替换字符串
    Y7000联想拯救者gtx1050Ti安装cuda9.0
  • 原文地址:https://www.cnblogs.com/xbfchder/p/10961519.html
Copyright © 2011-2022 走看看