public class A {
public static void main(String[] args) {
new B().why();
}
}class B extends C{
B(){
System.out.println("......");
}
static{
System.out.println("为什么呢?");
}
void why() {
String s="hello";
change(s,a);
System.out.println(s);
System.out.println(a);
}
void change(String s,int a){
s+=" world";
a+=10;
System.out.println(s);
System.out.println(a);
}
}class C{
C(){
System.out.println("...");
}
static int a=init(5);
static int init(int a){
System.out.println("为什么");
return a;
}
}================================================
本人初学JAVA,为什么运行的结果,两次s和a不相同?