MENU

标签 Java 下的文章

JVM垃圾回收机制

Java回收对象判定

  • 引用计数算法(Reference Counting)
    • 原理:给对象中添加一个引用计数器,当某一个地方引用它时,计数器值就加1;当引用失效时,计数器值就减1;任何时刻计数器为0的对象就是不可能再被使用的。
    • 缺点:难解决对象之间相互循环引用的问题。造成内存泄漏问题。
      20197

阅读全文

Java关于String、StringBuffer、StringBuilder区别

  • 都是final类,都不允许被继承
  • String类长度是不可变的,StringBuffer和StringBuilder类长度是可以改变的
  • StringBuffer类是线程安全的,StringBuilder不是线程安全的
  • String的不可变因素,因此它是线程安全的,而StringBuffer内部采用synchronized 进行同步,因此它也是线程安全的。

阅读全文

Java中transient关键字那些事

transient关键字在需要实现Serilizable接口中,将不需要序列化的属性前添加关键字transient,序列化对象时候,该属性不会被序列化到指定的目的地中。

阅读全文

static关键字初始化加载

前言

前几天在复习中遇到一个Java问题。静态变量的加载顺序问题。有点模棱两可,写个笔记记录一下吧。

重点

静态变量的存在父子继承的情况,初始化加载顺序为:

父类(静态变量、静态语句块)
子类(静态变量、静态语句块)
父类(实例变量,普通语句块)
父类(构造函数)
子类(实例变量、普通语句块)
子类(构造函数)