Java では RMI や CORBA などの ORB を使うことができますが、かといってソケットを利用した通信がなくなってしまうことはありません。異なるプラットフォームや Java 以外の言語で記述されたアプリケーションと通信を行うときなどはソケットがよく使われます。 Java 2 SE, v1.4 ではソケットも Channel として実装され、パフォーマンスが向上しています。 以前から存在した Socket クラスと ServerSocket クラスに相当するのが、SocketChannel クラスと ServerSocketClass です。また、DatagramSocket クラスに相当するのが、DatagramChannel クラスになります。 これらのクラスは単に既存のクラスを Channel として書き直したものではなく、新しい機能が付け加えられています。その機能の 1 つ