ByteArrayOutputStream的数据存储在RAM或硬盘上的什么地方?



在下面的代码中,ByteArrayOutputStream的数据存储在RAM或硬盘上的什么地方?

ByteArrayOutputStream bOutput = new ByteArrayOutputStream(12);
while( bOutput.size()!= 10 ) {
// Gets the inputs from the user
bOutput.write("hello".getBytes());
}

该对象将被分配到 JAVA 堆中,该堆将位于 RAM 中,但是,根据系统的配置方式,如果您的 ram 已耗尽,则可能会将其移动到磁盘上的交换分区。 这与 JVM 的分配无关,而是操作系统如何分配/管理内存。

简单的答案是:内存

你把它存储在一个数组(byte[] b(中,每个变量都存储在ram中!
流本身仅将数据存储在数组中。而且流也保存在 ram 中!

最新更新