0

好吧,我对 java.swing.ImageIcon 类的实例的行为有一个简单的疑问。

现在是基于RMI Client服务端操作......

假设在服务器计算机中存在一个名为jpg 的文件。现在使用检索它A.jpg

           // At Server...
           ImageIcon ic = new ImageIcon("C://server_image_folder//A.jpg");
           return ic;

然后在具有该功能的客户端中使用它

           // At Client....
           // same variable name used for simplicity....
           System.out.print(ic);

我们将在这里观察到它在服务器计算机中打印图像文件的 URL。

在这里,例如: - C:/server_image_folder/A.jpg

所以我的问题很简单......

  Will it cause any trouble since such URL don't exist in client computer ?

在localhost这样的情况下无法观察到此类问题,因为它们共享相同的 URL(我相信)。

但是,当两个程序都在不同的计算机上实现时,情况会怎样......??

4

1 回答 1

1

这不会导致问题,但可能会导致一些混乱。您正在使用的构造函数将单个 arg 视为文件名和描述。该filename字段是瞬态的,因此它不是序列化数据的一部分。但是,该description字段不是瞬态的,它将成为序列化数据的一部分。由于该toString方法将返回description非空字段,因此可能会导致您认为文件名也已保留,但事实并非如此。

于 2012-06-20T18:26:05.257 回答