###java

  • constructor call must be the first statement in a constructor;
    1. 构造方法只能在构造方法中调用
    2. 构造方法中至多只能被调用一次
  • 成员变量的初始化先于构造方法,成员变量按照声明顺序初始化,静态变量早于实例变量,静态变量只需初始化一次。

  • return this 技巧是的StringBuilder.append可以连续使用。

  • 一个方法只能有一个可变长参数,并且这个参数必须是最后一个参数。

  • 方法重载判定时,参数固定的方法先于可变长参数的方法。

  • 覆盖必须满足以下条件:
    1. 重写方法不能缩小访问权限
    2. 参数列表必须与被重写方法一致
    3. 返回值类型不许相同或为被重写方法返回值的子类
    4. 不能抛出更多异常,但可以抛出更少异常或不抛出异常
  • Java中的原子操作( atomic operations)

    1. 原子操作指的是在一步之内就完成而且不能被中断。原子操作在多线程环境中是线程安全的,无需考虑同步的问题。在java中,下列操作是原子操作:

      1. all assignments of primitive types except for long and double
      2. all assignments of references
      3. all operations of java.concurrent.Atomic* classes
      4. all assignments to volatile longs and doubles