设计模式之 静态代理

ぃ、小莉子 提交于 2020-02-13 23:23:29
 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.描述上述用例:真实对象:你;代理对象:婚庆公司;共同接口:结婚。意义:你在结婚的时候需要委托婚庆公司来辅助你更好地完成结婚这件事。 

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

易学教程内所有资源均来自网络或用户发布的内容,如有违反法律规定的内容欢迎反馈
该文章没有解决你所遇到的问题?点击提问,说说你的问题,让更多的人一起探讨吧!