 class OuterClass{
        public int a=10;
        static String s="abc";
		private int c=5;

        public class InnerClass{
            public int b=100;
			static int sb=1;
			//上面一行错误，因为此类型的内部类不允许定义 static 成员
            public void innerFunc(){
                System.out.println("inner b:="+b);
				//可以直接访问外部类的所有成员
                System.out.println("a:="+a);
                System.out.println("s:="+s);
				System.out.println("c:="+c);
            }
        }

        public void outerFunc(){
            System.out.println("a:="+a);
        }

        //在外部类方法中可以这样创建内部类对象。
        public void createInner(){
            InnerClass in=new InnerClass();
            in.innerFunc();
        }

        //测试
        public static void main(String[] args){
            //可以这样创建内部类对象
            OuterClass.InnerClass c= new OuterClass().new
            InnerClass();
            c.innerFunc();

			new OuterClass().createInner();
        }
    }
