class AA
{
public static int f()
{
return a++;
}
public static int a;
public static int b = f();
public static void main(String args[])
{
System.out.println(b); //我觉得应该输出:1
}
}
还有一个问题: 为什么在main之外居然可以合法调用到f()方法
------解决方案-------------------- ++a 才是1啊 方法f()是ststic静态的
------解决方案-------------------- 1.因为是a++,不是++a,所以输出是0不是1。 2。因为f()前面的修饰符是public static ,而AA的访问权限是包访问权限。
------解决方案-------------------- a++的问题 public static int f() { a++; return a; } 结果为1 为什么在main之外居然可以合法调用到f()方法 f()是静态的
------解决方案-------------------- a++的问题 public static int f() { a++; return a; } 结果为1 为什么在main之外居然可以合法调用到f()方法 f()是静态的
------解决方案--------------------
public class AA{
public static int f()
{
[color=#FF0000] a++ ;
return a;[/color]
}
public static int a;
public static int b = f();
public static void main(String args[])
{
System.out.println(b); //我觉得应该输出:1
}
}