首页 > 编程 > Java > 正文

Java 设计模式 - 代理模式

2019-11-06 07:36:39
字体:
来源:转载
供稿:网友

基本概念

代理模式的作用:

代理模式就是多一个代理类出来,替原对象进行一些操作,比如我们在租房子的时候回去找中介

代理模式的角色:

Subject,抽象角色,通过接口或抽象类声明真实角色实现的业务方法。

RealSubject,真实角色,实现抽象角色,实现抽象角色定义的业务逻辑,供代理角色调用。

PRoxy,代理角色,通过接口或抽象类声明真实角色实现的业务方法。


实例探究

Subject,抽象角色。

public interface Book { void read(); }

RealSubject,真实角色。

public class Bible implements Book { @Override public void read() { System.out.println("Reading..."); }}

Proxy,代理角色。需要关联实现并关联抽象角色。

public class BookProxy implements Book { // 委托对象,作为构造函数的参数 private Book book; public BookProxy(Book book) { this.book = book; } @Override public void read() { System.out.println("Reading 调用之前"); book.read(); System.out.println("Reading 调用之后"); }}

具体调用如下:

BookProxy proxy = new BookProxy (new Bible());proxy.read();

发表评论 共有条评论
用户名: 密码:
验证码: 匿名发表