目录 1.多线程运行的安全问题 2.多线程同步代码块 3.同步方法的锁是this 4.静态同步方法的锁是Class对象 5.单例设计模式(面试中的考点) 6.死锁(一个发生死锁的例子) 多线程运行的安全问题 例子:售票系统 class Ticket implements Runnable { //定义静态变量ticket private static int ticket=100; public void run() { while(true) { //判断票编号是否大于0 if(ticket>…
提要 01 IO流(BufferedWriter)02 IO流(BufferedReader)03 IO流(通过缓冲区复制文本文件)04 IO流(readLine的原理)05 IO流(MyBufferedReader)06 IO流(装饰设计模式)07 IO流(装饰和继承的区别) 01 IO流(BufferedWriter)字符流的缓冲区缓冲区的出现提高了对数据的读写效率.对应类BufferedWriterBufferedReader缓冲区要结合流才可以使用在流的基础上对流的功能进行了加强 /*…
提要 16 读取转换流17 写入转换流18 流操作规律-119 流操作规律-220 改变标准输入输出设备21 异常的日志信息22 系统信息 16 读取转换流 字符流体系中的InputStreamReader,是字节流通向字符流的桥梁:它使用指定的charset读取字节并将其解码为字符. 它使用的字符集可以由名称指定或显示给定,否则将接受平台默认的字符集. /* 通过上一小节15-读取键盘录入中键盘录入一行数据并打印其大写,发现就是读一行数据的原理. 也就是readLine方法. 能不能直接使用r…
Day 23 08 Udp接收端09 Udp键盘录入数据方式10 Udp聊天11 TCP传输12 TCP传输213 TCP练习14 TCP复制文件 08 Udp接收端 需求:定义一个应用程序,用于接收udp协议传输的数据并处理. 思路:1.定义UdpSocket服务.2.定义一个数据报包,因为要存储接收到的字节数据,而数据报包对象中有更多的功能可以提取字节数据中不同的数据信息.3.通过socket服务的receive方法将接收到的数据存入已经定义好的数据报包中.4.通过数据报包对象的特有功能.将…
Day20 01 File概述02 File对象功能-创建和删除03 File对象功能-判断04 File对象功能-获取05 File对象功能-文件列表106 File对象功能-文件列表207 列出目录下所有内容-递归08 列出目录下所有内容-带层次09 删除带内容的目录 01 File概述 File类用来将文件或者文件夹封装成对象方便对文件与文件夹进行操作File对象可以作为参数传递给流的构造函数了解File类中的常用方法. public static final String separat…
Day20 10 创建java文件列表11 Properties简述12 Properties存取13 Properties存取配置文件14 Properties练习15 PrintWriter16 合并流17 切割文件 10 创建java文件列表 练习:将一个指定目录下的java文件的绝对路径,存储到一个文本文件中,建立一个java文件列表的文件. 思路:1.对指定的目录进行递归2.获取递归过程所有的java文件的路径3.将这些路径存储到集合中4.将集合中的数据存储到一个文件中. import…
提要 08 自定义装饰类09 LineNumberReader10 MyLineNumberReader11 字节流File读写操作12 拷贝图片13 字节流的缓冲区14 自定义字节流的缓冲区-read和write的特点15 读取键盘录入 08 自定义装饰类 /*自定义装饰设计类*/ import java.io.*; class MyBufferedReader2 extends Reader { private Reader r; public MyBufferedReader2(Reade…
Day24 01 TCP上传图片02 客户端并发上传图片03 客户端并发登录04 浏览器客户端-自定义服务端05 浏览器客户端-Tomcat服务端 01 TCP上传图片 import java.net.*; import java.io.*; class PicClient { public static void main(String[] args) throws Exception { Socket s=new Socket("127.0.0.1",10007); FileInp…
目录: 01 网络编程概述1 02 网络编程概述2 03网络编程 网络模型 04网络编程 IP地址 05网络编程 TCP和UDP 06网络编程 Socket 07网络编程 UDP发送端 01 网络编程概述11.找到对方IP.2.数据要发送到对方指定的应用程序上,为了标识这些应用程序,给这些网络应用程序都用数字进行标识.为了方便称呼这个数字,把它称为端口,是逻辑端口.3.定义通信规则,这个通信规则称为协议.国际组织规定了通用协议TCP/IP. 02 网络编程概述2 03网络编程 网络模型 04网络…
Day 15 集合框架01 TreeSet02 TreeSet存储自定义对象03 二叉树04 实现Comparator方式排序05 TreeSet练习06 泛型概述07 泛型使用08 泛型类09 泛型方法10 静态方法泛型11 泛型接口12 泛型限定13 泛型限定2 01 TreeSet |--Set   |--HashSet   |--TreeSet 可以对集合中的元素进行排序 import java.util.*; class TreeSetTest { public static void…