Java SE 11 Gold学习笔记(第七章)

Java SE 11 Gold资格考试相关

知识点总结

❌⭕️

  • 第七章 Java I/O

間違えた:

間違えし易い:

分からない:

  1. BC❌⭕️CE

    1. File类能操纵文件或者目录,但是不能对文件的数据进行读取和书写,因此选项B错误。

    2. スクリーンショット 0002-12-28 午後5.20.10生成File object的四种构造方法,一般指定pathname的用的是最多的。

    3. 不存在的文件或路径的File object生成也是可能的。要确认文件或者路径是否存在可以使用exist方法。下图是File类的常用方法。

      スクリーンショット 0002-12-28 午後5.25.28

      Java SE 7开始,由于NIO.2的导入,比起File类,推荐使用Path接口。

  2. B❌⭕️C

    1. java的IO是不分输出种类的。
    2. 有四个抽象类(InputStream, OutputStream, Reader, Writer)提供最基本的方法,针对于device和处理对象,通过各种子类进行继承实现。
  3. C

    1. 6581609144708_.pic
  4. C

    1. text file一字一字读取时使用FileReader和FileWriter,一行一行读取时使用BufferedReader,BufferedWriter。
    2. 到达文件终端时返回null
    3. 写文件的时候注意换行!
  5. D❌⭕️B

    1. 装饰模式
  6. B

    1. InputStream和Reader类在读取数据时,对位置操作的三个方法

      1. void mark(int readlimit)对现在位置进行mark,参数是可以读取的文字数的上限。

      2. void reset() 回到mark位置,如果没有设置mark位置就reset,会导致IO Exception(Stream not marked)

      3. long skip(long n) 跳过n byte的数据

        注意:不是所有的stream都支持mark,可使用markSupported方法来确认是否支持

  7. AC❌⭕️AB

    1. 关于PrintStream和PrintWriter的使用
  8. D❌⭕️C

    1. System使用console时是通过System.console()来使用
  9. B❌⭕️D

    1. console.readPassword的返回值类型是char[ ]。
  10. BD

    1. 利用序列化的条件是实现serializable的接口(marker interface,主要起标记作用,不含有成员变量也不含有方法)
    2. 默认所有的类都是不可序列化的。
  11. A❌⭕️D

    1. 序列化和反序列化使用的类是ObjectOutputStream和ObjectInputStream
  12. C

    1. static和transient的变量不会被序列化。
  13. C❌⭕️D

    1. Java SE 7导入了NIO.2 其中的path接口解决了以前File类的一些问题。
  14. C

    1. FileSystems的getDefault方法用来取得platform的default file system。

    2. 1
      2
      3
      4
      5
      public static void main(String[] args) {

      FileSystem fileSystem = FileSystems.getDefault();
      System.out.println(fileSystem); //sun.nio.fs.MacOSXFileSystem@2c8d66b2
      }
  15. BD

    1. 获取Path object的两个方法,FileSystems.getDefault().getPath("path")Paths.get("path")
  16. B❌⭕️D

    1. File object到 Path object的转换可使用File的toPath 方法。
  17. B❌⭕️D

    1. Path的四种方法
    2. getRoot() 返回root路径,结果包含path的区分号,例如(¥)
    3. getName(int index) 返回index所对应的阶层的path,离root最近的index是0,之后越深一个阶层index增加1。
    4. getFileName() 返回最下层的path,注意不光是文件名字,阶层名也可以包括。当只有root 是该方法返回值是null。
    5. getNameCount()返回path中包含的阶层数,注意不包含root,当只有root阶层时,返回0。
  18. A❌⭕️B

    1. Path接口Path subPath(int beginIndex, int endIndex)方法的使用。subPath方法用于截取原path中的一部分,注意离root最近的index是0,注意endIndex指定的结果不包含因此不会被返回。
  19. A❌⭕️E

    1. resolve()根据参数不同,返回值也不同。

      1. 相对path,将两个path结合后返回。

      2. 绝对path,直接返回参数

      3. 空值,返回自身的path

        注意区别绝对路径和相对路径

  20. B❌⭕️C

    1. resolveSibling()根据参数不同结果也不同
      1. 相对path,现在path的父path开始的path返回
      2. 绝对path,直接返回参数
      3. 当call method的path object表示的object是相对path时,返回参数??
  21. A❌⭕️D

    1. normalize()方法是除去现在path的冗长化,返回正规method的path
      1. 注意.表示当前路径,因此可以忽略,..表示父路径
  22. C❌⭕️D

    1. relativize()方法返回的是针对现在的path,参数的path的相对path。
  23. B

  24. AC❌⭕️CD

    1. file的copy和移动使用Files的copy和move方法
      1. copy的default动作是有重复的文件时丢出例外。如果对象是目录,那么目录中有文件存在的情况下文件不会被copy
      2. symbolic link被复制的情况,一般copy的是link指向的文件,link不会被copy
  25. BDE❌⭕️BCD

    1. BasicFileAttributes以及它的两个子接口:DosFileAttributes,PosixFileAttribute是用来操纵文件属性的
  26. C❌⭕️A

    1. AttributeView的使用
  27. A❌⭕️D

    1. 取得文件或者目录的单一文件属性的时候可用Files类的getAttribute方法。
    2. static Object grtAttribute(Path path, String attribute, LinkOption... options)返回值是Object类型,因此需要cast,第二参数的写法是属性view名:属性名,属性view可以省略
  28. D❌⭕️C

    1. walkFileTree方法可以对目录进行遍历处理。
  29. B

    1. 使用lines方法将文件中的内容读取为Stream<String>的object
  30. A

    1. list方法不是递归的,只判断指定目录的文件和目录
    2. list的参数只能是目录,将文件的path传递给list方法时会抛出java.nio.file.NotDirectoryException异常
  31. B

    1. walk命令是深度优先的递归操作
  • 版权声明: 本博客所有文章除特别声明外,著作权归作者所有。转载请注明出处!
  • Copyrights © 2020-2021 Joe
  • 访问人数: | 浏览次数:

请我喝杯咖啡吧~

支付宝
微信