一个可能导致错误的小bug
2016-10-05 本文已影响8人
waj6701
现有类A
```java
public class A {
static String a1 = "a1";
static String a2 = B.b2;
}
```
再有类B
```java
public class B {
static String b1=A.a1;
static String b2="b2";
}
```
类A和类B交叉使用对方的静态变量的值,给自己的静态变量赋值,会出现什么情况?
其实很简单,static String b1=A.a1;导致A比类B先加载,从而使得类A中a2得不到正确的值,为null。