java基础
weixin_38642703
这个作者很懒,什么都没留下…
展开
-
java异常的finally
try语句没有被执行,如在try语句之前就返回了,这样finally语句就不会执行;因此说明了finally语句被执行的必要而非充分条件是:相应的try语句一定被执行到。 如果在try代码块中执行System.exit(0)语句;那么将终止Java虚拟机JVM,因此,finally语句也不会被执行到。 finally块的语句在try或catch中的return语句执行之后返...原创 2019-09-03 14:22:50 · 91 阅读 · 0 评论 -
字符串相关知识
1、为什么要引入其它两种字符串处理类? 说白了就是提高字符串连接效率。在大部分情况下,字符串的拼接速度为:StringBuilder>StringBuffer>String。 String是不可变的,因此每次对其操作改变其变量值,其实是生成一个新的对象,然后将变量引用指向新对象;因此速度慢。 StringBuffer则不同,对其操作即直接操作对象指向的引用,无需产生新对象,速...原创 2019-09-03 14:36:19 · 144 阅读 · 0 评论 -
Synchronized关键字和锁升级,详细分析偏向锁和轻量级锁的升级
目录 一、Synchronized使用场景 二、Synchronized实现原理 三、锁的优化 1、锁升级 2、锁粗化 3、锁消除 一、Synchronized使用场景 Synchronized是一个同步关键字,在某些多线程场景下,如果不进行同步会导致数据不安全,而Synchronized关键字就是用于代码同步。什么情况下会数据不安全呢,要满足两个条件:一是数据共享(临界资源),二是...转载 2019-09-10 14:13:40 · 108 阅读 · 0 评论