首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >RMI:通过价值传递还是参考传递?

RMI:通过价值传递还是参考传递?
EN

Stack Overflow用户
提问于 2010-06-21 19:20:36
回答 2查看 3.4K关注 0票数 3

我很难找到这个问题的明确答案,所以我想在这里用我自己的具体例子来问:

我正在创建一个多玩家垄断游戏。实际的独占代码运行在服务器上,客户端本质上是一个访问和控制该代码的GUI。垄断游戏由一个名为“银行”的阶级控制。

假设我在我的客户的主()中这样做:

代码语言:javascript
复制
Bank banker = server.getBank(); //gets the bank object from server
bank.turn(); //moves the current player

这个调用是在服务器上的Bank对象上转()还是在我的本地机器上调用它的副本?

更新:银行不实现远程。它是一个可序列化的对象。

EN

回答 2

Stack Overflow用户

回答已采纳

发布于 2010-06-21 19:25:04

这取决于Bank是否是Remote的实例。如果是的话,那么它将通过引用传递(如果所有设置都是正确的),如果没有,它将被序列化并通过值传递。

编辑:由于您的Bank类不是Remote,而是Serializable,所以它将被复制并通过值传递。

票数 7
EN

Stack Overflow用户

发布于 2010-06-21 19:26:51

这取决于你是如何编码它的。

通常,表示服务器端对象的任何客户端对象只需使用更新服务器端对象进行远程调用。客户端对象不过是用于调用服务器的传输协议的外观。

如果您使用RMI,那么它将遵循这一原则。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/3087756

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档