首页 > 其他分享 >静态代理 婚礼案例

静态代理 婚礼案例

时间:2023-02-23 09:24:35浏览次数:55  
标签:target 静态 void 代理 婚礼 案例 Marry HappyMarry public

package com.Java;

interface Marry {
public void HappyMarry();
}

//静态代理总结
//代理对象和真实对象都要实现同一个接口
//代理对象要代理真实角色

//好处
//代理对象可以做很多真实对象做不了的事情
//真实对象专注做自己的事情
public class StaticDaili {
public static void main(String[] args) {
new Shopping(new You()).HappyMarry(); //执行方法
}
};
//我
class You implements Marry {
@Override
public void HappyMarry() {
System.out.println("我是学生,别收我钱!");
}
}
//代理角色 帮助我结婚
class Shopping implements Marry {
// 我
private Marry target;

public Shopping(Marry target) {
this.target = target;
}
@Override
public void HappyMarry() {
before(); //代理干的事情
target.HappyMarry(); //我干的事
after(); //代理干的事情
}
private void before() {
System.out.println("婚礼前 先交钱");
}
private void after() {
System.out.println("婚礼后 入洞房");
}
}

标签:target,静态,void,代理,婚礼,案例,Marry,HappyMarry,public
From: https://www.cnblogs.com/fc666/p/17146703.html

相关文章

  • 故障案例分享 | 证书过期引发的血案...
    基本情况1月某日早9点15分,某手机端app接到用户报障:app出现异常,具体表象为登录app提示“License不合法,请联系系统管理员!”。后经核查,具体报错时间为7点24分-10点32分,故障影......
  • python 解析文件【案例3】
    使用python进行二进制数据处理的方法。方法一:使用struct模块,特点轻量化,简单易用。缺点就是可读性不是太好,使用小数据临时使用一下,对于大量的数据解析,写起来比较繁琐,显得有......
  • 6.mysql优化案例
    1.单表优化;   进行优化:删除原来的三个字段的索引,创建二个字段的索引;    2.两表关联:左连接,在右表创建索引 右连接,在左表创建......
  • python 日志解析【案例2】
     要做的事:  1:获取日志内标红的数据(ipython模式正则捕获如下图)         2:转换相关选项的md5和反编码值  3:根据dm值和上个小时的年月日(......
  • Python 解析log日志【案例1】
    sudoaptinstallpython3.8#安装python3python3.8-mpipinstallpython-dateutil#安装dateutil包[2021-09-0311:03:11]**************************E......
  • 理论:第七章:用生活的案例解释23种设计模式
    设计模式根据目的来分根据模式是用来完成什么工作来划分,这种方式可分为创建型模式、结构型模式和行为型模式3种。创建型模式:用于描述“怎样创建对象”,它的主要特点......
  • 创建多线程方式3:实现Callable接口 改造下载图片案例
    packagecom.Test;importorg.apache.commons.io.FileUtils;importjava.io.File;importjava.io.IOException;importjava.net.URL;importjava.util.concurrent.*;//开......
  • 静态库与动态库(区别,优缺点,创建与使用)
    1.库是什么?库是写好的,现有的,成熟的,可以复用的代码。本质上来说,库是一种可执行代码的二进制形式,可以被操作系统载入内存执行。即为源代码的二进制文件2.库的类型......
  • 多线程 龟兔赛跑案例
    packagecom.Java;publicclassRaceimplementsRunnable{//胜利者privatestaticStringwinner;@Overridepublicvoidrun(){for(inti=0......
  • Mockito mock 静态 void 方法
    MockedStatic<SpringContextUtils>utils=Mockito.mockStatic(SpringContextUtils.class);utils.when(()->SpringContextUtils.publishEvent(any())).......