java代理设计模式

/*
代理模式,顾名思义就是委托别人去做事情。
在cocoa touch框架中的Delegate,委托人往往是框架中的对象(视图中的控件、tableView等),代理人往往是视图控制器对象。代理人首先得满足一个条件:就是在其头文件中申明它拥有代理资格,具体实现是在其类声明的地方添加如<代理类>,表示这他拥有代理资格。其次,在其实现文件中定义委托人可以让代理人去代替做的事情。当这个委托人需要办这些事时,代理人去办这些事。这就是ios中的Delegate模式。
*/

/*
在java中,Proxy代理模式是一种结构型设计模式,主要解决的问题是:避免直接访问对象;代理是一种常用的设计模式,其目的就是为其他对象提供一个代理以控制对这个对象的直接访问。代理类负责为委托类预处理消息,过滤消息并转发消息,以及进行消息被委托类执行后的后续处理。

*/

//下面举法人、法人代理执行签字的过程

public class Test{

	public static void main(String[] args){

		ArtificialPerson p = new ArtificialPerson();
		ArtificialPersonProxy proxy = new ArtificialPersonProxy(p);
		proxy.sign();

	}
}

interface ArtificialPersonAction{

	void sign();
}

class ArtificialPerson implements ArtificialPersonAction{

	public void sign(){

		System.out.println("法人签字");
	}
}

class ArtificialPersonProxy implements ArtificialPersonAction{

	protected ArtificialPersonAction action;
	public ArtificialPersonProxy(ArtificialPersonAction action) {

		this.action = action;
	}

	public void sign(){

		System.out.println("法人签字前");
		action.sign();
		System.out.println("法人签字后");
	}

}



评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值