因此,java.nio.CharBuffer是一个抽象类,而HeapCharBuffer是包私有的。用户代码只能通过抽象超类CharBuffer的静态方法创建HeapCharBuffer的对象,如下所示:
CharBuffer cb = CharBuffer.allocate(10);
// cb class is now HeapCharBuffer
但是,为什么他们没有使CharBuffer成为一个非抽象的公共类,其中包含一组带有allocate和wrap方法逻辑的构造函数?这个概念有什么意义?
答案 0 :(得分:0)
我认为这样作者保留更改CharBuffer.allocate返回的CharBuffer具体实现的权利。