`
cjc19762338
  • 浏览: 61750 次
  • 性别: Icon_minigender_1
  • 来自: 上海
社区版块
存档分类
最新评论

java代理模式的设计动机

 
阅读更多

      代理模式是为了保证 Java 核心库的类型安全。所有 Java 应用都至少需要引用 java.lang.Object 类,也就是说在运行的时候,java.lang.Object 这个类需要被加载到 Java 虚拟机中。如果这个加载过程由 Java 应用自己的类加载器来完成的话,很可能就存在多个版本的 java.lang.Object 类,而且这些类之间是不兼容的。通过代理模式,对于 Java 核心库的类的加载工作由引导类加载器来统一完成,保证了 Java 应用所使用的都是同一个版本的 Java 核心库的类,是互相兼容的。

  不同的类加载器为相同名称的类创建了额外的名称空间。相同名称的类可以并存在 Java 虚拟机中,只需要用不同的类加载器来加载它们即可。不同类加载器加载的类之间是不兼容的,这就相当于在 Java 虚拟机内部创建了一个个相互隔离的 Java 类空间。

jvm如何判定两个类是否一致? 1、类全名是否相同。 2、是否用一个类加载器。

分享到:
评论
4 楼 lishuaibt 2010-08-04  
lz去看看类的双亲委派机制吧
3 楼 mercyblitz 2010-08-04  
wu_quanyin 写道
用自己的类加载器来完成的话,很可能就存在多个版本的 java.lang.Object 类...


楼主,,,Object可能让你下载多个版本吗?
http://wuquanyin1011.iteye.com/admin/blogs/703842


java.包下面的所有类都是又Bootstrap class Loader加载的。不存在多个版本,也不能ClassLoader#defineClass来重新定义java.下面的类。
2 楼 Ben.Sin 2010-08-04  
lz的显示器真大
1 楼 wu_quanyin 2010-08-04  
用自己的类加载器来完成的话,很可能就存在多个版本的 java.lang.Object 类...


楼主,,,Object可能让你下载多个版本吗?
http://wuquanyin1011.iteye.com/admin/blogs/703842

相关推荐

    Java设计模式相关书籍

    例如,Spring框架中大量运用了代理模式、工厂模式和策略模式。 - 通过设计模式,可以实现松耦合,使系统更加灵活,便于扩展和维护。比如,装饰器模式可以在不修改原有代码的基础上添加新功能,而观察者模式则允许...

    java设计模式电子书

    Java设计模式是软件开发中的重要概念,它是一种在特定情境下解决问题的经验总结,可以提高代码的可重用性、可维护性和灵活性。本电子书集合深入浅出地剖析了Java设计模式,旨在帮助开发者理解和应用这些模式,提升...

    java设计模式PPT

    以上内容仅涵盖了部分设计模式及其应用,具体PPT可能会详细解析每种模式的动机、结构、参与者、实现方式以及在Java中的实际应用示例。通过学习这些PPT,开发者可以更深入地理解设计模式,提升软件开发能力。

    java设计模式(英文版)

    - **代理模式(Proxy)**:通过引入一个代理对象来控制对某个对象的访问,可以增加额外的功能,如缓存、日志记录等,而无需修改原始对象的代码。例如,`PoolManager.java`被添加为一个更通用的连接池管理器,用于在...

    JAVA设计模式(堪称精华)

    7. **代理模式**:为其他对象提供一种代理以控制对这个对象的访问。在权限控制、远程调用等方面广泛应用。 8. **适配器模式**:将一个类的接口转换成客户希望的另一个接口。适配器使原本因接口不兼容而不能一起工作...

    java设计模式;java语言描述;经典的设计模式

    2. 结构型模式(Structural Patterns):这些模式关注如何组合对象和类以形成更大的结构,如适配器模式(Adapter)、装饰器模式(Decorator)、代理模式(Proxy)、桥接模式(Bridge)、组合模式(Composite)、外观...

    JAVA软件架构设计模式(英文版)

    通过阅读"JAVA软件架构设计模式"的PDF文档,读者可以深入学习每种模式的动机、实现方式以及适用场景。对于初学者来说,这将是一份宝贵的资源,能够帮助他们从概念上理解设计模式,并在实际项目中应用。对于经验丰富...

    Java 23种设计模式16代理模式.pdf

    ### Java设计模式之代理模式详解 #### 模式概述 代理模式是软件设计领域中一种常用的设计模式之一,尤其在面向对象编程语言如Java中应用广泛。代理模式的主要目的是为其他对象提供一种代理以控制对这个对象的访问...

    Java 中的设计模式 - jdon

    例如,适配器模式(Adapter)用于将不兼容接口的对象连接起来,装饰器模式(Decorator)允许动态地给对象添加新的行为或职责,代理模式(Proxy)提供一个代表对象来控制对原对象的访问。 3. 行为型模式:这类模式...

    java设计模式系列资料

    7. **代理模式**:为其他对象提供一种代理以控制对这个对象的访问。在Java中,可以通过静态代理或动态代理(Java的Proxy类)来实现。 8. **适配器模式**:将一个类的接口转换成客户希望的另一个接口。适配器使原本...

    Java与模式

    2. **结构型模式**:如适配器模式(Adapter)、桥接模式(Bridge)、装饰模式(Decorator)、组合模式(Composite)、外观模式(Facade)、享元模式(Flyweight)和代理模式(Proxy)。这些模式关注如何组合和构建类...

    java设计模式pdf格式

    代理模式(Proxy)为其他对象提供一种代理以控制对这个对象的访问;组合模式(Composite)将对象组合成树形结构,可以以树形结构的方式对待单个对象;外观模式(Facade)提供一个统一的接口,用来访问子系统的一组...

    十分详细的JAVA设计模式

    - **代理模式**:为其他对象提供一种代理以控制对这个对象的访问。它在需要控制访问权限或者增加额外功能时非常有用。 - **装饰器模式**:动态地给一个对象添加一些额外的职责,可以独立于其他对象实例而扩展其...

    面向对象的Java设计模式

    - **结构型模式**:用于处理类或对象的组合,使复杂的问题变得简单,包括适配器模式、桥接模式、组合模式、装饰器模式、外观模式、享元模式和代理模式。 - **行为型模式**:用于定义类之间的责任分配,包括策略...

    Java与模式-清晰书签版

    随后,书中详细讨论了23种GOF(GoF,即Gamma、Erich Gamma、Richard Helm、Ralph Johnson和John Vlissides)设计模式,包括创建型模式(如单例模式、工厂方法模式、抽象工厂模式)、结构型模式(如代理模式、适配器...

    java与模式-清晰书签版

    这23种模式包括创建型、结构型和行为型三大类别,如单例模式、工厂方法、抽象工厂、建造者模式、原型模式、适配器模式、装饰器模式、代理模式、桥接模式、组合模式、享元模式、外观模式、职责链模式、命令模式、解释...

    Java 23种设计模式12组合模式.pdf

    #### 模式动机 在实际开发中,我们经常会遇到需要处理具有层次关系的对象的情况。例如,在文件系统中,文件夹可以包含其他文件夹或者文件。对于这类问题,如果我们直接通过不同的类来区分叶子节点和容器节点,则在...

    java企业设计模式 将实践结合起来

    这个名为“Java 企业设计模式”的压缩包文件很可能包含了对以上提到的多种设计模式的深入讲解,包括其动机、结构、实现方式以及适用场景。读者可以通过学习这些材料,将理论知识与实际案例相结合,提升自己的设计...

    java设计莫说

    这本书涵盖了多种设计模式,包括创建型模式(如单例模式、工厂模式、抽象工厂模式、建造者模式和原型模式)、结构型模式(如适配器模式、桥接模式、装饰模式、组合模式、外观模式、享元模式和代理模式)以及行为型...

    headfirst 设计模式 java代码

    10. **代理模式**:为其他对象提供一种代理以控制对这个对象的访问。在Java中,静态代理和动态代理(通过`java.lang.reflect.Proxy`类)都是实现方式。 11. **组合模式**:允许你将对象组合成树形结构以表示“部分-...

Global site tag (gtag.js) - Google Analytics