静态代理模式Demo


package com.xcl.proxy;

//抽象主题角色
abstract class SaleComputer {
abstract public void saleComputer();
}

//真实的主题角色(ComputerMaker)
//必须继承抽象主题角色
class ComputerMaker extends SaleComputer {

@Override
public void saleComputer() {
System.out.println("卖出了一台电脑 ....");
}

}


//代理的主题角色(ComputerProxy)
//必须继承抽象主题角色
class ComputerProxy extends SaleComputer {

//必须含有对真实主题的引用
ComputerMaker cm = null;

//前置通知
public void beforAdvice() {
System.out.println("你买我电脑,我给你85折优惠!!!");
System.out.println("还送你一个无线鼠标!!");
}

@Override
public void saleComputer() {
//前置通知
beforAdvice();
if (cm == null) {
cm = new ComputerMaker();
}
cm.saleComputer();
//后置通知
afterAdvice();
}

//后置通知
public void afterAdvice() {
System.out.println("2个月内免费包换,2年内免费包维修,5年内电话上门服务!!!");
}
}

public class ProxyDemo {

public static void main(String[] args) {
SaleComputer sc = new ComputerProxy();
sc.saleComputer();
}
}

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值