0

所以,java.nio.CharBuffer 是一个抽象类,而 HeapCharBuffer 是包私有的。用户代码只能通过抽象超类 CharBuffer 的静态方法创建 HeapCharBuffer 对象,如下所示:

CharBuffer cb = CharBuffer.allocate(10);
// cb class is now HeapCharBuffer

但是,为什么他们不把 CharBuffer 做成一个非抽象的公共类,它有一组构造函数,具有分配和包装方法的逻辑呢?这样的概念有什么意义?

4

1 回答 1

0

我认为这样作者保留更改 CharBuffer.allocate 返回的 CharBuffer 的具体实现的权利。

于 2013-04-21T14:36:25.183 回答