日期:2014-05-20 浏览次数:20952 次
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; //正确
      
      
   }
}