第6章输入.pptVIP

  1. 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
  2. 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  3. 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
  4. 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
  5. 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们
  6. 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
  7. 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
第6章 输入/输出和异常处理 在实际的应用开发中经常会遇到数据输入/输出的需求,这样的需求在Java中使用I/O流来实现。 基本知识点: Java中用于输入/输出的I/O流 序列化机制和文件管理 Java中的异常处理,它用于保证代码的容错性。 6.1 I/O流 一个好的程序语言,完善的输入输出功能是必不可少的。 在Java中将不同来源和目标的数据统一抽象为流,通过对流对象的操作来完成I/O功能 Java中的流很灵活,可以连接到各种不同的源或目标,如磁盘文件、键盘(输入设备)、显示器(输出设备)、网络等。 6.1.1 流的层次 Java中所有的I/O都是通过流来实现的,可以将流理解为连接到数据目标或源的管道,可以通过连接到源的流从源当中读取数据,或通过连接到目标的流向目标中写入数据。 根据流的方向可以将其分为两类:输入流和输出流。用户可以从输入流中读取信息,向输出流中写信息。 6.1.1 流的层次 根据流处理数据类型的不同也可以将其分为两类:字节流与字符流。 下面主要从类的层次来介绍I/O流。 Java中I/O流是由java.io包来实现的,其中的类大致分为输入和输出两大部分。 6.1.1 流的层次 在java.io包最顶层包含子类较多的两个类是InputStream和OutputStream。 这两个类均为抽象类,也就是说不能创建它们的实例对象,必须创建子类之后才能建立对象。 java.io包中的很多类都是从这两个类继承而来的,因此,这些子类有很多相同的方法。 6.1.2 输入流和输出流 Java的I/O类库分成输入和输出两大部分。所有InputStream和Reader的派生类都有一个继承下来的,能读取单个或byte数组的read()方法。 同理,所有OutputStream和Writer的派生类都有一个能写入单个或byte数组的write()方法。但通常情况下,这些方法不是直接应用的,而是供其他类使用,而其他类会提供一些更实用的接口。 Java的设计者们遵循这样的原则:让所有与输入相关的类去继承InputStream,所有与输出相关的类继承OutputStream。 6.1.3 字节流和字符流 根据流处理数据类型的不同也可以将其分为两类:字节流与字符流 字节流:字节流以字节为基本单位来处理数据的输入/输出,一般都用于对二进制数据的读写,如声音、图像等。 字符流:字符流以字符为基本单位来处理数据的输入和输出,一般都用于对文本类型数据的读写,如文本文件、网络中发送的文本信息等。 虽然文本数据也可以看作二进制数据,但一般采用字符流处理文本数据比采用字节流效率更高,也更方便。 6.1.4 随机存取文件流 前面介绍的都是顺序访问的流,在Java还有一种支持随机访问的流RandomAccessFile。 这个类的实例支持同时进行的读/写操作。 文件指针可用getFilePointer()方法读取,用seek()方法设置。 6.2 I/O流的使用 标准的I/O输出 基本的I/O流 过滤流 文件的随机读写和流的分割。 6.2.1 标准的I/O流 下面首先介绍标准的I/O流的使用方法。在Java语言中,键盘用stdin表示,监视器用stdout表示。 它们均被封装在System类的类变量in和out中,分别对应于System.in和System.out。 类变量in和out分别属于类InputStream和PrintStream,只是由于InputStream和PrintStream不能用new()方法直接创建 6.2.1 标准的I/O流 6.2.1 标准的I/O流 在System类中声明为如下的3个类变量。 public static InputStream in public static PrintStream out public static PrintStream err 6.2.2 基本的I/O流 基本的I/O流主要包括InputStream类、OutputStream类、PipedInputStream类和PipedOutput Stream类以及SequenceInputStream类 1.InputStream类 InputStream类是以字节为单位的输入流。 InputStream是一个抽象类,因此不能建立它的实例,用户只能使用它的子类。 注意,大多数输入方法都抛出了IOException异常,因此如果程序中调用了这些输入方法,就必须捕获和处理IOException异常。 Java中 I/O 包 1. 流分类 节点流:从特定地方读入的流类,例如:磁盘或一块内存区域。 过滤流:使用已存在的输入或输出流连接构造,增强节点流的功能。 2. java.io包中InputStream的类层次

文档评论(0)

希望之星 + 关注
实名认证
文档贡献者

我是一名原创力文库的爱好者!从事自由职业!

1亿VIP精品文档

相关文档