分布式和非分布式模型对比-Java快速入门教程
分布式和非分布式模型对比
Java SE 平台的分布式对象模型在以下方面与 Java SE 平台的对象模型类似:
- 对远程对象的引用可以作为参数传递或作为任何方法调用(本地或远程)的结果返回。
- 可以使用 Java 编程语言中内置的转换语法,将远程对象转换为实现支持的任何远程接口集。
- 内置
instanceof
运算符可用于测试远程对象支持的远程接口。
Java SE 平台的分布式对象模型在以下方面与 Java SE 平台的对象模型不同:
- 远程对象的客户端与远程接口交互,从不与这些接口的实现类交互。
- 远程方法调用的非远程参数和结果是通过复制而不是引用传递的。这是因为对对象的引用仅在单个虚拟机中有用。
- 远程对象通过引用传递,而不是通过复制实际的远程实现。
- 类定义的一些方法的语义
java.lang.Object
专门用于远程对象。 - 由于调用远程对象的失败模式本质上比调用本地对象的失败模式更复杂,客户端必须处理在远程方法调用期间可能发生的额外异常