摘要:
什么是单例模式? 单例模式就是保证一个类只有一个对象的实例,实现这种功能的方式就叫单例模式。 如何实现单例模式 因为保证一个类只能有一个实例,不能多次实例化,不能允许用户new对象,所以需要将构造方法私有化,通过提供类的方法来让外部获取对象实例 单例模式主要存在两种方式实现:饿汉式和懒汉式 饿汉式 阅读全文
摘要:
什么是JMM? 在了解JMM之前,先了解下为什么提出了JMM。 CPU缓存,在多核CPU的情况下,带来了可见性问题 操作系统对当前执行线程的切换,带来了原子性问题 编译器指令重排优化,带来了有序性问题。 JMM 即Java内存模型,也就是Java Memory Model,简称JMM,本身是一种抽象 阅读全文
摘要:
Volatile关键字 使用锁的方式可以解决共享变量内存可见性问题,但是使用锁太笨重,因为它会带来线程上下文的切换开销。对于解决内存可见性问题,Java还提供了一种弱形式的同步,就是Volatile关键字。该关键字可以确保对一个变量的更新对其他线程马上可见。当一个变量被声明为volatile时,线程 阅读全文
摘要:
题目表述 给你一个字符串表达式 s ,请你实现一个基本计算器来计算并返回它的值。 注意:不允许使用任何将字符串作为数学表达式计算的内置函数,比如 eval() 。 示例: **输入:**s = "(1+(4+5+2)-3)+(6+8)" **输出:**23 双栈解法 使用两个栈numsStack和o 阅读全文