摘要: StringBudiler源码 继承关系树 底层实现 默认容量() 特别的添加方法(append) 1、继承关系树 继承自AbstractStringBuilder与StringBuffer同族 2、底层实现 AbstractStringBuilder.java 底层和String一样使用字符串实现 阅读全文
posted @ 2019-03-13 18:05 随风而行- 阅读(394) 评论(0) 推荐(0) 编辑
摘要: Java运算符 ​ &&与|| &&与||又名快速与和快速或; 当&&出现时只要左侧为false就不会执行右侧操作; 当||出现时只要左侧为true就不会执行右侧操作; 做个实现 这种方法主要可以用于简化一些if判断语句比如说: 可是使用&&修改为 是不是感觉代码变少了,虽有现在看来逻辑不一定清晰, 阅读全文
posted @ 2019-03-13 18:04 随风而行- 阅读(81) 评论(0) 推荐(0) 编辑
摘要: DCL实现多线程安全的高性能懒汉模式 1.单线程安全的懒汉模式实现 源码: 2.多线程下低性能的懒汉模式(使用synchronized修饰方法) 为什么说这个方法是低性能的呢: 1. synchronized同步的方法是静态的,会导致进入该方法是JVM会锁定LazyLoad这个类 解决方法:从上面可 阅读全文
posted @ 2019-03-13 18:03 随风而行- 阅读(640) 评论(0) 推荐(0) 编辑
摘要: Stack过时的类,使用Deque重新实现。 HashCode和equals的关系 HashCode为hash码,用于散列数组中的存储时HashMap进行散列映射。 equals方法适用于比较两个对象是否相同,Object方法的equals方法默认为比较两个对象的地址是否相同 在实际开发中hashc 阅读全文
posted @ 2019-03-13 18:03 随风而行- 阅读(195) 评论(0) 推荐(0) 编辑
摘要: ArrayList中的一些小细节@JDK8 该变量用于记录ArrayList的版本号,不可被序列化,每次对ArrayList操作都会修改此版本号,为ArrayList提供FastFail功能;可是,在每次操作中都操作此变量,会造成一个结果就是该变量会迅速变化,很快超过Integer.MAXVALUE 阅读全文
posted @ 2019-03-13 18:02 随风而行- 阅读(270) 评论(0) 推荐(0) 编辑
摘要: 阅读全文
posted @ 2019-03-13 18:01 随风而行- 阅读(244) 评论(0) 推荐(0) 编辑
摘要: ThreadLocal总结 特点 抗冲突能力低 每个Thread中只能保存一个对应ThreadLocal的一个值 由 中保存变量 ; 要点 实体继承了·WeakReference·能在不被GCRoot标记时,直接被GC回收 使用类似hash的结构,解决Hash冲突的方法是二次线性探测 一般情况下的h 阅读全文
posted @ 2019-03-13 17:58 随风而行- 阅读(202) 评论(0) 推荐(0) 编辑
摘要: 阅读全文
posted @ 2019-03-13 17:56 随风而行- 阅读(1360) 评论(0) 推荐(0) 编辑
摘要: Java之static静态代码块 构造代码块 使用 包裹的代码区域,这里的代码区域特指位于 下面的而不是存在于其他 这类函数下面的代码区域 构造函数代码块 构造函数代码块指的是构造函数中所包含的代码,类似 中的代码块 static代码块 static代码块指的是 包裹的代码块,且静态代码只执行一次, 阅读全文
posted @ 2019-03-13 17:39 随风而行- 阅读(19047) 评论(2) 推荐(6) 编辑