- 博客(3)
- 收藏
- 关注
原创 2021-03-30
简单的总结一下我所知道的字符串不可变性的知识 对于字符串,大家并不陌生, 字符串可以通过以下两种方式创建 String str = new String("abc"); String str1 = "abc"; 那么两种创建方式是否有区别呢? 首先我们需要知道在jdk8之后,字符串都将存放在方法区内的字符串常量池中,在String数据类型的底层是用一个final修饰的字符数组来存取数据的,一经赋值,就不可改变,这也就是String的不可变性的由来。上述的创建过程可以由下图来表示: 在使用new创
2021-03-30 22:22:30 54
原创 2021-03-25
单例设计模式的不同实现方式 类的单例设计模式是指采取一定的方法保证在整个的软件系统中,对某个类只能存在一个实例对象,并且该类只提供一个取得其对象的实例方法(静态方法)。 1.饿汉式 1-1:饿汉式(静态常量) 该方式在类装载时候完成实例化,避免线程同步问题,如果自始至终未使用,会造成内存资源的浪费。 class Singleton{ //构造器私有化 private Singleton(){ } //类内部创建实例 private final static Singl
2021-03-25 16:22:29 58 1
原创 生产者与消费者模式代码简单实现
生产者与消费者模式代码简单实现 主要涉及知识点为线程同步问题 店员类: class Clerk{ private int productCount = 0; public synchronized void produceProduct(){ if(productCount < 20){ productCount++; System.out.println(Thread.currentT
2021-03-25 15:06:02 406 2
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人