Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/java/390.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Java 使用UnicastRemoteObject.exportObject的返回值与导出的对象之间是否存在差异?_Java_Rmi - Fatal编程技术网

Java 使用UnicastRemoteObject.exportObject的返回值与导出的对象之间是否存在差异?

Java 使用UnicastRemoteObject.exportObject的返回值与导出的对象之间是否存在差异?,java,rmi,Java,Rmi,导出对象时,我发现 LocateRegistry.createRegistry(1099); ObjectToExport obj = new ObjectToExport(); UnicastRemoteObject.exportObject(obj, 1099); Naming.rebind("ObjectName", obj); 还有这个 LocateRegistry.createRegistry(1099); ObjectToExport obj = new ObjectToExpor

导出对象时,我发现

LocateRegistry.createRegistry(1099);
ObjectToExport obj = new ObjectToExport();
UnicastRemoteObject.exportObject(obj, 1099);
Naming.rebind("ObjectName", obj);
还有这个

LocateRegistry.createRegistry(1099);
ObjectToExport obj = new ObjectToExport();
Naming.rebind("ObjectName", UnicastRemoteObject.exportObject(obj, 1099));
工作。在第一个示例中,我不使用
exportObject
的返回值,在第二个示例中,我使用。这两种导出对象的方法有区别吗?
API只说返回值是
远程对象存根

在导出步骤中没有区别,但是您也绑定了对象,在这个步骤中有区别。在第一步中,您传递的是实际对象;第二种是存根。然而,RMI的语义是,导出的远程对象作为它们自己的存根传递给远程方法,因此在注册表中的实际效果是相同的