套接字异常 - 如何从Socket Exception对象获取原始套接字

时间:2014-06-27 06:53:33

标签: java network-programming

我有一种方法可以将数据从一个套接字传输到另一个套接字。现在,无论何时在任何套接字上都存在问题,我都需要检测哪个套接字导致了Socket异常。这是否可以从Socket Exception对象中检测到它?

3 个答案:

答案 0 :(得分:2)

不是来自异常本身,但您可以从上下文中获取。如果代码只操作一个套接字,那么显然异常必须与该套接字有关。

听起来你没有在适当的级别处理异常,而是在程序的高级部分处理(捕获)低级别异常,并期望能够在那时进行低级别处理。 / p>

考虑在中间级别捕获异常,部分处理它,然后重新抛出它。您可能希望在那时进行异常转换(链接)。

答案 1 :(得分:1)

您无法从异常中获取它,因为没有保存套接字的属性。

答案 2 :(得分:-1)

简单的答案是“不”。由于Java中的异常是为了通知意外行为,因此不会使它们存储对该对象的任何错误引用。您可以在此异常类或其任何超类中看到。他们都不能控制任何对象。