ANYアドレスでServerSocketをバインドさせる

ServerSocketがbind()するとき、そのエンドポイント指定に使うInetSocketAddress作成で、

  • 第一引数にInetAddress.getByName("0.0.0.0")を渡す
  • 第一引数にInetAddress.getByName(null)を渡す

と、ANYでバインドする。つまり、上記の二つのInetAddressがANYアドレスを示すInetAddress。

後者のパターンがInetSocketAddressの引数にnullを指定するのと勘違いしやすい…。