1

我是 java 新手,我想知道是否有简单的方法来了解像以下对象创建这样的流程,我正在使用 eclipse,当我编写new ObjectInputStream并按下CTRL+时SPACE。我没有看到任何可以输入新的 BufferedInputStream 的选项(我已经从示例中复制了代码),而不是为 FileInputStream 等创建新对象。

in = new ObjectInputStream(new BufferedInputStream(new FileInputStream("emp.dat")));
List temp = (List)in.readObject();

我给出了这个例子,因为这是我第一次看到这种创建新对象流,我想在下一次使用一些最佳实践。

4

3 回答 3

2

这是使用[Decorator Pattern][1]. 您将包装对象以添加行为。

于 2012-09-15T09:39:07.913 回答
1

这很简单。这相当于:

FileInputStream fis = new FileInputStream("emp.dat");
BufferedInputStream bis = new BufferedInputStream(fis)
ObjectInputStream in = new ObjectInputStream(bis);

由于您是 Java 新手,因此您应该检查javadocs而不是在 Eclipse 中检查它。

检查:FileInputStreamBufferedInputStreamObjectInputStream

于 2012-09-15T09:45:41.437 回答
0

Ctrl+Space显示您当时可用的选项,以获取您可能重视的选项,如果您创建了必须输入的内容new,然后Ctrl+Space

顺便说一句:ObjectInputStream 和 ObjectOutputStream 已经被缓冲,因此添加更多缓冲并不是最佳实践恕我直言。

于 2012-09-15T10:22:09.083 回答