洛神赋

子虚乌有

  BlogJava :: 首页 :: 联系 :: 聚合  :: 管理
  7 Posts :: 10 Stories :: 0 Comments :: 0 Trackbacks

知识点一:分类
         IO
中按照数据流的方向不同可以分为输入流和输出流(以程序的角度来考虑)

         按照数据单位的不同可以分为字节流和字符流。

         按照功能的不同可以分为节点流和处理流。


知识点二: 四大等级结构

  java语言的i/o库提供了四大等级结构:InputStream,OutputStream,Reader,Writer四个系列的类。InputStream和OutputStream处理8位字节流数据, Reader和Writer处理16位的字符流数据。InputStream和Reader处理输入, OutputStream和Writer处理输出。大家一定要到J2SE文档中看看这四大等级结构的类继承体系。

  除了这四大系列类,i/o库还提供了少数的辅助类,其中比较重要的是InputStreamReader和OutputStreamWriter。InputStreamReader把InputStream适配为Reader, OutputStreamWriter把OutputStream适配为Writer;这样就架起了字节流处理类和字符流处理类间的桥梁。

  您使用I/O库时,只要按以上的规则,到相应的类体系中寻找您需要的类即可

下面我就会对I/O 进行不定期更新:

1 FileOutputStream 文件字节流

Public class FileInputStream extends InputStream

  {

  /* File Descriptor - handle to the open file */

  private FileDescriptor fd;

  public FileInputStream(FileDescriptor fdObj)

  {

  SecurityManager security = System.getSecurityManager();

  if (fdObj == null) {

  throw new NullPointerException();

  }

  if (security != null) {

  security.checkRead(fdObj);

  }

  fd = fdObj;

  }

  //其他代码

  }

  可见,FileInputStream继承了InputStream,组合了FileDescriptor,采用的是对象Adapter模式。我们学习i/o库时,主要应该掌握这四个对象Adapter模式的适配源: ByteArrayInputStream的适配源是Byte数组, FileInputStream的适配源是File对象, PipedInputStream的适配源是PipedOutputStream对象, StringBufferInputStream的适配源是String对象



posted on 2010-11-13 11:52 洛神赋 阅读(296) 评论(0)  编辑  收藏

只有注册用户登录后才能发表评论。


网站导航: