Java (Socket,ServerSocket)与(SocketChannel,ServerSocketChannel)区别和联系

Socket 和ServerSocke 是一对  他们是java.net下面实现socket通信的类
SocketChannel 和ServerSocketChannel是一对 他们是java.nio下面实现通信的类 支持异步通信

服务器必须先建立ServerSocket或者ServerSocketChannel 来等待客户端的连接
客户端必须建立相对应的Socket或者SocketChannel来与服务器建立连接
服务器接受到客户端的连接受,再生成一个Socket或者SocketChannel与此客户端通信

不过Socket和SocketChannel可以通过 socket.channel() SocketChannel.socket() 方法相互转换
同理ServerSocket 和ServerSocketChannel 也可以相互转换
原文地址:https://www.cnblogs.com/sishang/p/6164949.html