Java 套接字getInetAddress方法重写

Java 套接字getInetAddress方法重写,java,sockets,methods,overriding,Java,Sockets,Methods,Overriding,我一直在想,是否可以覆盖Java的socket.getInetAddress()方法,以提供与/IP不同的输出。例如,只需IP 我知道这是一个小小的改变,但定制格式有时更可取 这是很容易做到的还是字符串操作是必要的?例如,使用子字符串(1)?不是声明的最终的,不是最终的,您可以覆盖它,即使这不是一个好主意 在socket的实现中,返回super.getInetAddress().substring(1)应该可以工作 你也必须提供你自己的。我认为,现实是个坏主意。问题是API类永远不会返回您的So

我一直在想,是否可以覆盖Java的
socket.getInetAddress()
方法,以提供与/IP不同的输出。例如,只需IP

我知道这是一个小小的改变,但定制格式有时更可取

这是很容易做到的还是字符串操作是必要的?例如,使用
子字符串(1)

不是声明的
最终的
,不是
最终的
,您可以覆盖它,即使这不是一个好主意

在socket
的实现中,返回super.getInetAddress().substring(1)应该可以工作


你也必须提供你自己的。我认为,现实是个坏主意。

问题是API类永远不会返回您的Socket版本,因此您不能使用override。我建议使用一种简单的实用方法,根据您的需要更改地址。

如果您想使类的接口更好地满足您的需要,可以检查。

您命名的方法不会产生任何输出。您描述的格式来自InetAddress.toString()方法。如果您不需要这种格式,请不要调用该方法。有InetAddress方法可以只获取主机名或地址。使用它们。这不是一个真正的问题。

我不认为该方法被声明为final,也不认为该类被声明为final,因此在理论上,它是可以实现的。这是SocketFactory的意图。