class X{
static int val;
}
class A extends X {
A(){val++;}
}
class Toi7_1 {
public static void main(String[] args){
new A();
System.out.println(X.val);
}
}

結果画面には 1 がでます。
変数 val を 初期化(val = 0)をしていないのに
始めから0扱いされてるのがよくわかりません。
そういうものとして覚えていくしかないんでしょうか。