电脑桌面
添加小米粒文库到电脑桌面
安装后可以在桌面快捷访问

04747java知识点总结VIP免费

04747java知识点总结_第1页
04747java知识点总结_第2页
04747java知识点总结_第3页
第七章:输入和输出流第一节:数据流的基本概念1.在java中,把不同类型的输入、输出源抽象为流,其中输入或输出的数据成为数据流,用统一的接口表示。2.数据流是指一组有顺序的、有起点和终点的字节集合。程序从键盘接收数据或向文件中写数据,都可以使用数据流来完成。3.流分为输入数据流和输出数据流。输入数据流只能读不能写;而输出数据流只能写不能读。从数据流中读取数据是,必须有一个数据源与该数据流相连(FileInputStreamin=newFileInputStream(“javatest.txt”);)(实例化)4.Java.io包中提供了表示数据流的4个基本抽象类(不可以实例化),分别是InputStream、OutputStream、Reader和Writer。因此涉及数据流操作的程序中,几乎都要使用引入语句:importjava.io.*5.为了使对象的状态能够方便地永久保存下来,java.io包中又提供了以字节流为基础的用于对象的永久化保存状态的机制,通过实现ObjectInput和ObjectOutput接口来完成。6.输入数据流提供的主要操作方法有:(得到-1,标志数据流结束)intread():从输入流读取一个字节的二进制数据intread(byte[]b):将多个字节读到数组中,填满整个数组intread(byte[]b,intoff,intlen):从输入流中读取长度为len的数据,从数组b中下标为off的位置开始放置读入的数据,读毕返回读取的字节数。7.voidclose():关闭数据流intavailable():返回目前可以从数据流中读取的字节数longskip(longl):跳过数据流中指定数量的字节不读取,返回值表示实际跳过的字节数8.如需要反向读取数据流,则使用回推操作(PushBack)BooleanmarkSupported():用于测试数据流是否支持回推操作voidmark(int):用于标记数据流的当前位置,并划出一个缓冲区,其大小至少为指定参数的大小。voidreset():将输入流重新定位到对此流最后调用mark方法时的位置9.输出数据流提供的主要操作方法有:voidwrite(inti):将字节i写入到数据流voidwrite(byte[]b):将数组b[]中的全部b.length个字节写入数据流voidwrite(byte[]b,intoff,intlen):将数组b[]中从下标off开始的len个字节写入数据流voidclose():当结束对输出流的操作是应该将其关闭voidflush():刷新此输出流并强制写出所有缓冲的输出字节第二节:基本字节数据流类1.文件数据流包括FileInputStream和FileOutputStream,这两个类用来进行文件的I/O处理,其数据源或数据终点都应当是文件;不支持方法mark()和reset()。2.缓冲区数据流有BufferInputStream和BufferOutputStream,它们实在数据流上增加了一个缓冲区,都属于过滤器数据流。3.读写数据时,数据以块(大小可设置)为单位先进入缓冲区,其后的读写操作作用于缓冲区;采用这个办法可以降低不同硬件设备之间速度的差异,提高I/O操作的效率。4.一般在关闭一个缓冲区输出流之前,应先使用flush()方法,强制输出剩余数据。5.数据数据流DataInputStream和DataOutputStream(Data可以是intlongdoubleBooleanstring.........)DataInputStream中包含方法:intreadInt();BolleanreadBoolean().........DataOutputStream中包含方法:voidwriteInt(inta);voidwriteBoolean(booleana).........6.java中对象读取功能通过java.io包中的ObjectInputStream和ObjectOutputStream类实现。7.读对象用方法readObject()把数据流以Object类型返回,返回内容应该在转换为正确的类型之后再执行该类的方法:Datad=null;ObjectInputStreams=newObjectInputStream(data.txt);d=(Data)s.readObject(d);//要转为正确的类型Data8.能够记录自己的状态一遍将来得到复原的能力,成为对象的持久性。9.把对象转换为字节序列的过程称为对象的序列化,把字节序列转化为对象称为反序列化。10.如果变量是另一个对象的引用,则引用的对象也要序列化。这个过程是递归的,保存的结果可以看做是一个对象网。11.Serializable接口中没有定义任何方法,只是作为一个标记来指示实现该接口的类可以进行序列化,而没有实现该接口的类的对象不能长期保存其状态。12.只有实现Serializable接口的类才能被序列化。13.要序列化一个对象,必须与特定的对象输入/输出流联系起来;该功能通过ObjectInputStream和ObjectOutputSt...

1、当您付费下载文档后,您只拥有了使用权限,并不意味着购买了版权,文档只能用于自身使用,不得用于其他商业用途(如 [转卖]进行直接盈利或[编辑后售卖]进行间接盈利)。
2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。
3、如文档内容存在违规,或者侵犯商业秘密、侵犯著作权等,请点击“违规举报”。

碎片内容

确认删除?
VIP
微信客服
  • 扫码咨询
会员Q群
  • 会员专属群点击这里加入QQ群
客服邮箱
回到顶部