No enclosing instance of type CheckInMethods is accessible

非静态内部类必须在外部类的非静态成员里构造  我是写main里面了所以报错了
也可以用.new在main创建内部类 代码如下


public class InnerClass {
	
	public InnerClass() {
	}
	
	class Inner{
		public Inner() {
			System.out.println("inner class");
			//.this指向外部类对象
			System.out.println(Inner.this);
		}
	}
	
	public Inner asdf(){
		InnerClass.Inner inner = new Inner();
		return inner;
	}

	public static void main(String [] args){
		InnerClass insd = new InnerClass();
		insd.asdf();
		//.new创建内部类对象
		insd.new Inner();
 	
	}
}

你可能感兴趣的:(instance)