我对代理模式的理解是:一个人本该他去做的事情,他由于一些原因不想做,他把他交给别人去做这件事情。比如现在的项目老大都把比较繁琐但又没什么技术含量的东西交给小弟做一样!小弟就是代理者。
下面是一个简单的例子
接口SubJect.java
package pattern.detegate;
public interface SubJect {
public abstract void request();
}
接口的实现类
package pattern.detegate;
public class RealSubJect implements SubJect {
public void request() {
System.out.println("这里表示真实的对象");
}
}
然后是代理类
package pattern.detegate;
public class ProxySubject implements SubJect {
private RealSubJect realSubJect;
public void preRequest() {
// .............
}
public void request() {
preRequest();
if (realSubJect == null) {
realSubJect = new RealSubJect();
}
realSubJect.request();
postRequest();
}
public void postRequest() {
// .............
}
}
测试代码
package pattern.detegate;
public class TestDetegate {
/**
* @param args
*/
public static void main(String[] args) {
ProxySubject proxy=new ProxySubject();
proxy.request();
}
}
分享到:
相关推荐
### Java代理模式与Java动态代理详解 #### 一、代理模式概述 代理模式是一种软件设计模式,它在客户端和目标对象之间提供了一种间接层。这种模式的主要目的是控制客户端对目标对象的访问,并且可以在不修改原有...
在本实例中,我们将深入探讨Java中的代理模式及其应用。 代理模式的核心思想是为一个对象创建一个代理对象,这个代理对象在客户端和目标对象之间起到中介的作用。它可以控制目标对象的访问,也可以在调用目标对象的...
**Java设计模式——代理模式详解** 代理模式是软件设计模式中的一个重要组成部分,它在Java编程中扮演着举足轻重的角色。代理模式的核心思想是为一个对象提供一个替身,这个替身即代理对象,代理对象可以控制对原...
在Java编程中,设计模式是一种解决常见问题的模板或最佳实践,它可以帮助开发者编写更加灵活、可维护和可扩展的代码。代理设计模式是其中的一种,它的主要作用是在...在实际开发中,应根据项目需求选择合适的代理模式。
Java 设计模式实验七门面模式和代理模式 在软件设计中,门面模式和代理模式是两种常用的设计模式,分别用于简化系统接口和延迟对象加载。下面,我们将详细介绍这两种模式,并通过实验了解如何将它们应用于实际软件...
java spring 代理模式,详细介绍java的代理模式,初学者可以看看
在Java中,代理模式有两种主要实现方式:静态代理和动态代理。下面将详细介绍这两种代理模式,并结合`ProxyDemo`案例进行说明。 ### 1. 静态代理 静态代理是最基础的代理形式,它通过显式创建一个代理类来实现对...
装饰模式和动态代理模式是Java编程中两种非常重要的设计模式,它们都在代码的扩展性和灵活性方面发挥着关键作用。下面将分别对这两种模式进行详细解释,并结合手写的数据库连接池和动态代理模式的使用进行深入探讨。...
在Java编程中,代理模式是一种常用的设计模式,它允许我们为一个对象提供一个代理以控制对这个对象的访问。在代理模式中,代理类作为原对象的替代品,可以增加额外的功能或者在调用原对象的方法之前/之后执行特定的...
Java代理模式是一种设计模式,它允许我们为现有的对象创建一个代理对象,以便在不修改原对象的情况下增强或扩展其功能。这种模式在处理需要添加额外逻辑但又不想修改原始类的场景时尤其有用,比如日志、事务管理、...
Java代理模式是一种设计模式,它允许我们为一个对象创建一个代理,这个代理对象可以在不影响原始对象功能的基础上,增强或扩展其行为。代理模式在软件开发中广泛应用,例如用于权限控制、事务管理、日志记录等场景。...
Java代理模式是一种设计模式,它允许我们为一个对象创建一个代理对象,该代理对象在调用实际对象的方法之前或之后可以执行额外的操作。这在不修改原有对象代码的情况下,提供了扩展功能的可能性。代理模式通常分为两...
[JAVA编程模式与范例][JAVA编程模式与范例][JAVA编程模式与范例][JAVA编程模式与范例][JAVA编程模式与范例][JAVA编程模式与范例][JAVA编程模式与范例][JAVA编程模式与范例][JAVA编程模式与范例][JAVA编程模式与范例]...
在这个"JAVA设计模式例程-代理模式"的压缩包中,我们可以深入学习如何在Java中实现这一模式。 1. **代理模式的基本概念** 代理模式的核心思想是为一个目标对象创建一个代理对象,代理对象在客户端和目标对象之间起...
在Java中,代理模式可以通过多种方式实现,包括静态代理和动态代理。 在提供的文件列表中,我们可以看到以下几个关键类: 1. `ProxyDisplay`:这个名字暗示了它可能是代理模式中的代理类,用于代表或代替某个实际...
结构模式是指在对象之间的关系和结构上使用的模式,包括 Flyweight(共享模式)、Bridge(桥模式)、Decorator(装饰模式)、Composite(组合模式)、Adapter(适配器模式)、Proxy(代理模式)、Facade(外观模式)...
这个项目涵盖了四种重要的设计模式:单例模式、代理模式、建造者模式和抽象工厂模式,为初学者提供了一个良好的实践平台。 1. **单例模式**: 单例模式是一种确保一个类只有一个实例并提供全局访问点的设计模式。...
总的来说,Java 代理模式是通过代理类来增强或扩展目标类功能的一种设计模式,尤其适用于需要在调用前后添加额外逻辑的场景。通过深入理解代理模式和其在房屋买卖场景中的应用,我们可以更好地掌握这一重要的设计...
3. **模式间的相互关系**:了解不同设计模式之间的关联和区别,比如装饰器和代理模式的区别,或者单例模式与静态内部类的实现差异。 4. **模式的优缺点**:评估每种模式的适用性和潜在问题,如过度设计或性能影响。 ...