随笔分类 - java基础
摘要:我们都知道final修饰变量时 会变为常量,但是使 用final关键字修饰一个变量时,是引用不能变,还是引用的对象不能变? 下面让我们来看这段代码: [java] view plain copy /** * 验证final修饰的变量是引用不能变,还是引用的对象不能变 * StringBuilder
阅读全文
摘要:String 字符串常量StringBuffer 字符串变量(线程安全)StringBuilder 字符串变量(非线程安全) 简要的说, String 类型和 StringBuffer 类型的主要性能区别其实在于 String 是不可变的对象, 因此在每次对 String 类型进行改变的时候其实都等
阅读全文
摘要:在设计模式中对Builder模式的定义是用于构建复杂对象的一种模式,所构建的对象往往需要多步初始化或赋值才能完成。那么,在实际的开发过程中,我们哪些地方适合用到Builder模式呢?其中使用Builder模式来替代多参数构造函数是一个比较好的实践法则。 我们常常会面临编写一个这样的实现类(假设类名叫
阅读全文
摘要:共同点: ThreadLocal和线程同步机制都是为了解决多线程中相同变量的访问冲突问题。 区别: 在同步机制中,通过对象的锁机制保证同一时间只有一个线程访问变量。 这时该变量是多个线程共享的,使用同步机制要求程序慎密地分析什么时候对变量进行读写,什么时候需要锁定某个对象,什么时候释放对象锁等繁杂的
阅读全文
摘要:锁作为并发共享数据,保证一致性的工具, 在JAVA平台有多种实现(如 synchronized 和 ReentrantLock等等 ) 。这些已经写好提供的锁为我们开发提供了便利,但是锁的具体性质以及类型却很少被提及。 下面将分析JAVA中常见的锁名称以及特性。 1、自旋锁 自旋锁是采用让当前线程不
阅读全文

浙公网安备 33010602011771号