日期:2014-05-20 浏览次数:20744 次
public class TestInnerClass { public static void main(String[] args) { new InnerClass().method(); } static class InnerClass{ static int i = 0; public static void method( ){ System.out.println("静态内部类 的 类变量 i 是 "+ i); System.out.println("静态内部类 的 类方法 是 method"); } } }
------解决方案--------------------
看这个你就明白了:http://zhidao.baidu.com/question/124117953.html
很多问题可以自己动手尝试。
------解决方案--------------------
就是在内部类中不能定义静态变量或者静态方法!!!内部类可以看成是外嵌类的成员,如果没有把这个内部类定义为静态的,则不能在内部类中定义静态变量和方法。
1、静态内部类
public class TestInnerClass {
public static void main(String[] args) {
new InnerClass().method();
}
static class InnerClass{
static int i = 0;
public static void method( ){
System.out.println("静态内部类 的 类变量 i 是 "+ i);
System.out.println("静态内部类 的 类方法 是 method");
}
}
}
2、非静态内部类
public class TestInnerClass
{
public static void main(String[] args)
{
}
class china{
public static int b//此处报错。不能定义为静态的变量
public int a; //正确
}
}