今天第一天开学了,也是第一次写博客,以前也没有写过这东西,只看过名人的博客之类的,感觉博客这东西应该是高手之类的人写的东西吧,突然让我写这东西,还真不知从何下手,不过既然任务来了,逃避可不是程序员的性格,即使再难也要硬着头皮上吧,可能开始的时候写的不是太好吧,毕竟万事开头难,只要过了这个阶段,也许就会好一些了。。。。
今天主要学的是 JAVA 的数据流的输入和输出,我总结的以下要点。。。
数据流分为输入流( InputStream )和输出流 (OutputStream) 两大类 . 输入流只能读不能写,而输出流只能写不能读。
为提高数据的传输效率,通常使用缓冲流( Buffered Stream ) , 即为一个流配有一个缓冲区( Buffer ),一个缓冲区就是专门用于传送数据的一块内存。
JAVA 通过系统类 System 实现标准的输出、输入功能。 System 类在 java.lang 包中,生命一个 final 类。 System 类不能创建对象,而是要直接使用其中三个成员,分别是 in out 和 err 。
System.in 作为字节输入流类 InputStream 的对象,视线标准的输入,使用其 read() 方法从键盘接受数据,使用 read() 方法发生 IO 错误时,抛出 IOException 异常。
System.out 是打印流类 PrintStream 的对象,用来实现标准输入。其中有 print() 和 println() 两个方法,这两个方法支持参数为 java 的仁义基本类型。
System.err 以 PrintStream 类的对象 err 实现标准的错误输出。
InputStream 类和 OutputStream 类都是抽象类,不能实例化,因此在实际应用中并不使用这两个类,而是使用另外的一些基本数据流类,它们都是 InputStream 和 OutputStream 的子类,在实现其超累方法的同时又定义了其特有功能,用于不同的应用场合。
文件数据流类 FileInputStream 和 FileOutputStream 是育部关于进行文件输入、输出处理的字节流类,其数据对象都是文件。
FileInputStream 用于顺序访问本地文件。它从超类 InputStream 中继承 read() close() 等方法对本机上的文件进行操作,但不支持 mark() 方法和 reser() 方法。
FileOutputStream 用于一个文件的写数据。它从超类 OutputStream 中继承了 write() close() 等方法。