从网络接收对象并区分它

时间:2012-01-12 17:37:23

标签: java

我使用getInputStream()通过ObjectInputStream从网络接收对象 我的问题是:一旦它从网络到达我怎么能区分它?我可以使用instance of吗?

ObjectInputStream ois = new ObjectInputStream(socket.getInputStream();

Object obj = ois.readObject();

if(obj instanceof ObjectA)
    ...
else  
    ...

1 个答案:

答案 0 :(得分:1)

首先,不会测试ObjectInputStream以了解您收到的对象的类。 你应该使用:

Object o = ois.readObject();

然后你可以使用instanceof或者你可以使用o.getClass().getName()。然后你就会知道它是什么类型的物体。