设计模式之代理模式(java实现)

本文通过一个购票示例,介绍了Java中的代理模式,包括抽象基类、具体实现类(用户)和代理类(携程)。强调了模式的优点如职责清晰和高扩展性,同时也讨论了可能的缺点——请求处理速度减慢。
摘要由CSDN通过智能技术生成

代码:

interface Subject{
	 void buy();
}

class User implements Subject{
	public void buy(){
		System.out.println("购票");
	}
}

class XC implements Subject{
	
	XC(Subject my_sub){
		this.my_sub=new User();
	}
	public void buy(){
		System.out.print("携程帮忙");
		my_sub.buy();
	}
	private Subject my_sub;
}
class Demo{
	public static void main(String[] argv){
		Subject user_test=new User();
		user_test.buy();
		XC xc_test=new XC(user_test);
		xc_test.buy();
		
	}
}

思路:购票列子

                

                我们有我们的抽象基类

                具体实现类,我们的用户具体要干的事情

                代理类,继承于我们的抽象基类,通过代理类的成员去调用具体实现类

类图:                

优缺点:

优点

  • 职责清晰:真实角色就是实现实际业务逻辑,不关心其他非本职责事务,通过后期代理完成一件事务。

  • 高扩展性:具体主题角色可变

缺点

  • 代理模式可能会造成请求的处理速度变慢

  • 10
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 1
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值