本周主要学习内容如下:
一.Java IO流对象
IO流主要用于硬板、内存、键盘等处理设备上得数据操作,根据处理数据的数据类型的不同可以分为:字节流(抽象基类为InPutStream和OutPutStream)和字符流(抽象基类为Reader和Writer)
1.输入字节流InputStream
InputStream 是所有的输入字节流的父类,它是一个抽象类。
ByteArrayInputStream、StringBufferInputStream、FileInputStream 是三种基本的介质流,它们分别从Byte 数组、StringBuffer、和本地文件中读取数据。 PipedInputStream 是从与其它线程共用的管道中读取数据。
ObjectInputStream 和所有FilterInputStream 的子类都是装饰流(装饰器模式的主角)。
2.输出字节流OutputStream
OutputStream 是所有的输出字节流的父类,它是一个抽象类。
ByteArrayOutputStream、FileOutputStream 是两种基本的介质流,它们分别向Byte 数组、和本地文件中写入数据。PipedOutputStream 是向与其它线程共用的管道中写入数据,
ObjectOutputStream 和所有FilterOutputStream 的子类都是装饰流。
二.Java网络编程
1. Java网络编程基础
IP和端口:IP是用来标示计算机,而端口是用来标示某个计算机上面的特定应用。
客户端和服务端:客户端就是享用服务的计算机,而服务端就是提供服务的计算机。客户端和服务端,可以简称为C/S模型。
TCP和UDP:TCP,传输控制协议,是一种面向连接的可靠传输协议,UDP,用户数据包协议,是一种无连接的不可靠的传输协议。
2. 利用Java实现TCP和UDP通信
Java网络编程的类和接口,都放在Java.io包里面。
TCP通信的类:java.io.ServerSocket和java.io.Socket类;而UDP通信的类java.io.DatagramPacket和
java.io.DatagramSocket类。
三.Java解析xml、解析xml四种方法、DOM、SAX、JDOM、DOM4j、XPath
主要使用:sax、dom是两种对xml文档进行解析的方法(没有具体实现,只是接口),所以只有它们是无法解析xml文档的;