Java基础
Jay-
这个作者很懒,什么都没留下…
展开
-
JUC学习之——多线程操作集合类的安全问题
Java中集合存在的线程安全问题Java中,ArrayList、Hashset、HasMap等都是线程不安全的,主要原因就是其中许多操作(例如ArrayList中的add操作)是非原子的操作,这就导致多线程在操作这些集合类的时候会产生线程的安全性问题。例如:List<Integer> list = new ArrayList<>();for(i = 1;i <= 30; i++){ new Thread(() -> { list.add(i); Sys原创 2020-06-17 22:07:26 · 396 阅读 · 0 评论 -
Java代理模式的举例——理解向
Java中的代理模式就是相当于提供一个类似于中介的类来控制对另一个对象的访问,定义的规范就是代理类和被代理类都需要实现同一套接口,当代理类调用其实现接口的重写方法的同时,也完成了对被代理类对其实现该接口的重写方法,从而完成了类似于“中介”的作用。这样做的好处就是能够在不改变既有代码的情况下,扩展类的功能首先,从静态代理来熟悉代理模式的机制public class NetWorkTest{ ...原创 2020-03-13 21:58:59 · 149 阅读 · 0 评论 -
Java中的单例模式
描述采取某种方法使得整个软件系统之中,保证某个类只存在一个对象,减少对象的创建次数从而减少系统的资源开销。应用场景网站的计数器应用程序的日志数据库连接池项目中读取配置文件的类Application也是单例的典型应用Windows的Task Manager(任务管理器)Windows的Recycle Bin(回收站)单例模式的实现饿汉式public class Ba...原创 2020-02-21 15:35:36 · 116 阅读 · 0 评论 -
Java编写生产者消费者问题
生产者消费者问题问题描述生产者(Producer)将产品交给店员(Clerk),而消费者(Consumer)从店员处取走产品, 店员一次只能持有固定数量的产品(比如:20),如果生产者试图生产更多的产品,店员会叫生产者停一下,如果店中有空位放产品了再通知生产者继续生产;如果店中没有产品了,店员会告诉消费者等一下,如果店中有产品了再通知消费者来取走产品。分析是否是一个多线程问题?是...原创 2020-02-20 17:32:21 · 265 阅读 · 0 评论