Java学习笔记(二十八)

  • PrintStream
    • 构造函数:PrintStream(OutputStream out)
    • 打印:void print(String s)
    • 打印后换行: void println(String s)
    • 刷新流: void flush()
    • 关闭流: void close()
  • PrintWriter
    • 构造函数:PrintWriter(Writer out)
    • 打印:void print(String s)
    • 打印后换行: void println(String s)
    • 刷新流: void flush()
    • 关闭流: void close()
  • 打印流和转换流实现模拟聊天
BufferedReader br = new BufferedReader(new InputStreamReader(System.in));
PrintStream ps = new PrintStream(new FileOutputStream("./a.txt"));
while(true){
	String str = br.readLine();
	if("bye".equals(str)){
		System.out.println("聊天结束");
		break;
	}
	ps.println(str);
}
ps.close();
br.close();
  • ObjectOutputStream

    • 只支持实现java.io.Serializable接口的对象
    • 构造:ObjectOutputStream(OutputStream out)
    • 将对象写入到输出流: void writerObject(Object obj)
    • 关闭流: void close()
  • ObjectInputStream

    • 构造:ObjectInputStream(InStream out)
    • 从输入流中读取对象: Object readObject()
    • 关闭流: void close()
  • transient修饰成员变量,表示该变量不参与序列化

  • 希望将多个对象写入文件时,将多个对象放入一个集合中,然后将集合整体看作一个对象写入输出流中

  • RandomAccessFile

    • 在这里插入图片描述
    • write方法不是插入,会覆盖原字符
  • 多线程

    • 程序:存放在硬盘上的可执行文件

    • 进程:运行在内存中的可执行文件

    • 多线程采用时间片轮转法保证多个线程的并发执行

    • 创建方式

      • 自定义类继承Thread类并重写run方法,然后创建该类对象调用start()方法
      • 自定义类实现Runnable接口并重写run方法,创建该类对象作为实参构造Thread类型对象,然后使用Thread类的对象调用start方法
    • 在这里插入图片描述

    • run方法相当于普通方法的调用

    • start方法相当于又启动了一个线程调用run方法


版权声明:本文为fan2312原创文章,遵循CC 4.0 BY-SA版权协议,转载请附上原文出处链接和本声明。