Java内部类的简单记忆

内部类是Java的类的一种形式,它的使用方法比较奇怪,让一些开发人员无法正确的理解它。这里提供一个简单的Demo,帮助大家理解。

public class InnerClassDemo{
	//静态内部类,不能访问静态成员变量和方法
	//在外部类加载的时候,静态内部类也随之加载
	//相对于外部类来说,几乎是独立的,可以在不依赖外部类对象的条件下单独创建一个内部类对象
	static class Inner01{
		//...
	}
	//成员内部类,可以访问静态成员变量和方法
	//此时的内部类需要等外部类创建了对象以后才会被加载到JVM中,属于外部类的某个实例
	class Inner02{
		//...
	}
	//局部内部类,仅在定义它的方法中有效
	//不能使用static关键字,只能使用abstract和final关键字
	//只能访问外部类带有final关键字的局部变量
	public void abc(){
		class Inner03{
			//...
		}
	}
	//匿名内部类,局部内部类去掉名字,不会出现class关键字
	public void cde(){
		new OneInterface(){           //直接new一个接口
			public void interMethod(){   //接口方法
				//...
			}
		}
	}
}


你可能感兴趣的:(Java)