【代码笔记】Java文件的输入输出(1)——Java.io包的初步理解

  1. Java里面文件的输入输出全部在java.io包里面。
  2. Java.io包里面所有的类都需要掌握。
  3. java.io包里面所有的东西都在上面了。
  4. 包里面的相关类、异常等树关系如下
    1. 类分层结构

      1. java.lang.Object
      2. 对象的母类,所有对象都在这个类之下。
        1. java.io.Console (implements java.io.Flushable)
        2. 比如:从eclipse的控制台读取数据,不用eclipse基本没啥用。
        3. java.io.File (implements java.lang.Comparable<T>, java.io.Serializable)
        4. 用户界面和操作系统使用与系统相关的路径名字符串 来命名文件和目录。申明关联一个文件的路径。
        5. java.io.FileDescriptor
        6. 这个搞不懂有什么用……
        7. java.io.InputStream (implements java.io.Closeable)
        8. 抽象类。表示字节输入流的所有类的超类,需要定义 InputStream 子类的来运用。

          • java.io.ByteArrayInputStream
          • 应该是字节数组输入流……API解释是:包含一个内部缓冲区,该缓冲区包含从流中读取的字节。内部计数器跟踪 read 方法要提供的下一个字节。
          • java.io.FileInputStream
          • 从文件系统中的某个文件中获得输入字节。
          • java.io.FilterInputStream
          • 包含其他一些输入流,它将这些流用作其基本数据源,它可以直接传输数据或提供一些额外的功能。
            • java.io.BufferedInputStream
            • 创建一个内部缓冲区数组。在读取或跳过流中的字节时,可根据需要从包含的输入流再次填充该内部缓冲区,一次填充多个字节。
            • java.io.DataInputStream (implements java.io.DataInput)
            • 包装类DataInputStream提供了多种对文件的写入和读取方法
            • 读取识别java的基本数据类型,整型 浮点型 布尔型这些东西都可以识别,但是相比FileInputStream,这种面向文件的读取就不可以。

              相比FileInputStream读取的单位是字节,是因为他面向的是文件,它不管他要读取的东西是什么数据类型,统统以之为文件的形式,然后按照字节为单位,一个字节一个字节的读取。

            • java.io.LineNumberInputStream
            • 已过时。(意思就是别用就行)
        1. java.io.ObjectInputStream.GetField
        2. java.io.ObjectOutputStream.PutField
        3. java.io.ObjectStreamClass (implements java.io.Serializable)
        4. java.io.ObjectStreamField (implements java.lang.Comparable<T>)
        5. java.io.OutputStream (implements java.io.Closeable, java.io.Flushable)
        1. java.security.Permission (implements java.security.Guard, java.io.Serializable)
        1. java.io.RandomAccessFile (implements java.io.Closeable, java.io.DataInput, java.io.DataOutput)
        2. java.io.Reader (implements java.io.Closeable, java.lang.Readable)
        1. java.io.StreamTokenizer
        2. java.lang.Throwable (implements java.io.Serializable)
          1. java.lang.Error
          2. java.lang.Exception
            1. java.io.IOException
              1. java.io.CharConversionException
        1. java.io.Writer (implements java.lang.Appendable, java.io.Closeable, java.io.Flushable)
          1. java.io.BufferedWriter
          2. java.io.CharArrayWriter
          3. java.io.FilterWriter
          1. java.io.OutputStreamWriter
            1. java.io.FileWriter
          2. java.io.PipedWriter
          3. java.io.PrintWriter
          4. java.io.StringWriter
    2. 接口分层结构

  5. a
  6. e
原文地址:https://www.cnblogs.com/xiaofu007/p/5516263.html