gpt4 book ai didi

java - 将 ByteArrayOutputStream 传递到 DataOutputStream 的构造函数中

转载 作者:行者123 更新时间:2023-12-01 17:27:09 27 4
gpt4 key购买 nike

我知道这可以使用包装器模式来完成,但我很难理解以下代码是如何工作的。

ByteArrayOutputStream bytearray = new ByteArrayOutputStream();
DataOutputStream os = new DataOutputStream(bytearray);

通过ByteArrayOutputStream引用 DataOutputStream 的构造函数意味着 DataOutputStream转换为 ByteArrayOutputStream ,但是如何呢?

此后,os.writeUTF("String");DataOutputStream怎么样转换为ByteArrayOutputStream .

幕后发生了什么?有人可以解释一下细节吗?

最佳答案

DataOutputStream 仅需要在其构造函数中实现 OutputStream。它不关心它是如何实现的,只关心它满足接口(interface)。 ByteArrayOutputStream 提供由字节数组支持的输出流。同样,您可以使用 FileOutputStream 来获取磁盘上文件支持的流。从DataOutputStream的角度来看,它们都是与接口(interface)一起使用的流。 OutputStream 是一个非常简单的接口(interface),只定义了一些将字节数组写入某种存储设备的方法。

幕后并没有什么魔法,它只是使用 OutputStream 并且不关心它是如何实现的。

关于java - 将 ByteArrayOutputStream 传递到 DataOutputStream 的构造函数中,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/14020958/

27 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com