1.今天主要学习了字符流的操作:Reader/Writer
1.1:实际干活的是FileReader这个类,和FileWriter这个类 1.2:这个字符流也有缓冲:叫做:BufferedReader 和 BufferedWriter 使用方法: BufferedReader bf=new BufferedReader(new FileReader(File fi)); bf.readLine(); BufferedWriter bu=new BufferedWriter(new FileWriter(File fi)); bu.write("sssss"); 注意:这里要进行换行的话要用:/r/n来进行换行2.I/O的序列化:
2.1:序列化的含义:数据的持久化操作。必须实现Sorializable接口 2.2:用到了: ObjectOutputStream:序列化 ObjectInputStream:反序列化 2.3:使用方法:序列化: ObjectOutputStream out=new ObjectOutputStream(new FileOutputStream(fi)); out.writeObject(Student stu); 反序列化: ObjectInputStream in=new ObjectInputStream(new FileInputStream(fi)); Student stu1=(Student) in.readObject(); 在这里需要注意一个问题: 那就是如果读到末尾没有停止的话就会报EOFException异常。 2.4:对象里面有对象,只要那一个对象实现Sorializable接口,同样可以被序列化 和反序列化。如果不实现这个接口的话就会报NotSerializableException异常 2.5:一个对象里面的一个属性如果用transient来修饰的话,本属性将不参与序列化 将采用默认值。3.线程
3.1:线程和进程的区别: 线程:用Thread来修饰。一个进程里面多个线程共享一块CPU,最大化利用CUP 进程:各自用各自的CPU。一个进程可能包含多个线程。 3.2:线程的启动方式: 第一种:extends Thread并重写run()方法,而且执行时候执行start()方法 start方法是继承自父类的。 第二种:实现 implements Runnable接口,并重写run()方法,然后 Thread t=new Thread(类的实例); t.start(); 3.3:Thread的一个方法:.sleep(1000)暂时休眠1秒。 3.4:线程的优先级:MAX Priority最高 MIN Priority最低 一般不进行设置优先级。 3.5:同步处理: a在使用,别人就不能使用。 关键字:Synchroized 用来修饰被统一使用的资源上,修饰方法,用这个方法的时候,这个类 对象被锁定,运行完了将解锁。 3.6:Synchroized块: Synchroized(ob1){} Synchroized(ob2){} 使用ob1时候ob2可以使用但是不能用ob1