AsynchronousServerSocketChannel.bind()总是需要“localhost”吗?

时间:2015-03-26 10:06:58

标签: java sockets io

我正在研究java socket。有一个名为" AsynchronousServerSocketChannel"

的类

它有一个名为" bind"的方法。该方法需要一个"参数"这是" SocketAddress"。

我发现了所有关于" SocketAddress"的例子。对象是"新的InetSocketAddress(" 127.0.0.1",8000)"或新的InetSocketAddress(" localhost",8000),

我想问:"我们使用其他ip-address是否有任何不同的情况,例如' 192.168.1.100'?如果没有,为什么我们必须始终把它放入方法中。它应该有一个默认值。

1 个答案:

答案 0 :(得分:0)

  • 如果您希望服务器仅侦听该地址,则可以使用任何其他本地IP地址。
  • 更常见的情况是,您使用null,或省略与INADDR_ANY,对应的参数,这意味着通过任何本地IP地址接受连接。