1

我正在制作一个需要将加密数据从一台 PC 发送到另一台的程序。我想知道是否可以以某种方式扩展 AsynchronousSocketChannel.write 和 AsynchronousSocketChannel.read 的功能来为我做这件事,而不是每次都显式地加密/解密数据然后使用 AsynchronousSocketChannel 发送数据。不过,似乎 AsynchronousSocketChannel.write 是一种最终方法。有什么方法可以制作我自己的 AsynchronousSocketChannel,或者这是否违反直觉?

提前谢谢了。

4

1 回答 1

1

您可以将其包装在您自己的类中:

import java.nio.ByteBuffer;
import java.nio.channels.AsynchronousSocketChannel;
import java.util.concurrent.Future;

public class EncryptedAsynchronousSocketChannel {
    private AsynchronousSocketChannel channel;
    public Future<Integer> read(ByteBuffer dst){
        return channel.read(dst);
    }
    public Future<Integer> write(ByteBuffer src){
        return channel.write(src);
    }
}
于 2013-02-21T02:19:08.173 回答