2

在我的代码中,我有一个带有 ByteBuffer 和两个构造函数的类。根据构造函数,我想为 ByteBuffer 分配不同的空间。

ByteBuffer data = ByteBuffer.allocate(1);

1st_constructor(arg1, arg2, arg3){
     data = ByteBuffer.allocate(5);   
}

1st_constructor(arg1, arg2){
    data = ByteBuffer.allocate(10);    
}

我想知道,这是正确的方法吗?我只在构造函数之外声明了 ByteBuffer,因为我认为这是实例化对象能够访问它的唯一方式(但不确定这是否正确?)

感谢您的帮助。

4

2 回答 2

4

这是正确的方法:

final ByteBuffer data;

1st_constructor(arg1, arg2, arg3){
     data = ByteBuffer.allocate(5);   
}

1st_constructor(arg1, arg2){
    data = ByteBuffer.allocate(10);    
}
于 2013-05-31T03:15:01.973 回答
0

不知道为什么你有

ByteBuffer data = ByteBuffer.allocate(1);

如上所述将其标记为 final,或者如果这是您的意图,则将其移动到单独的默认构造函数中。

于 2013-05-31T03:16:59.550 回答