我很难找到这个问题的明确答案,所以我想我会在这里用自己的具体例子问:
我正在创建一个mulitplayer垄断游戏.实际的垄断代码在服务器上运行,客户端本质上是一个访问和控制此代码的GUI.垄断游戏由一个名为"银行"的类控制.
假设我在客户端的main()中执行了此操作:
Bank banker = server.getBank(); //gets the bank object from server
bank.turn(); //moves the current player
Run Code Online (Sandbox Code Playgroud)
这会调用服务器上的Bank对象上的turn()还是本地机器上的它的副本?
更新:银行没有实现远程.它是一个可序列化的对象.
这取决于是否Bank是一个实例Remote.如果是这样,那么它将通过引用传递(如果所有设置都正确),如果不是,它将被序列化并按值传递.
编辑:既然你的Bank类不是Remote,但是 Serializable,那么它会被复制和按值传递.
| 归档时间: |
|
| 查看次数: |
3156 次 |
| 最近记录: |