非静态内部类
1、非静态内部类实例化需要依赖外部类实例化对象
外部类.内部类 内部类实例化名称=外部类实例化对象.new 内部类();
2、非静态内部类里不能定义 静态变量,方法
因为非静态内部类依赖外部类实例才能实例化 ,而静态变量不需要实例即可实例化,这两项是相矛 盾的(如果一个非静态内部类有了静态成员,静态成员不依托于任何内部类实例,那结果也就是此内部类不需要外部类实例就初始化了变量,严重侵害了内部类的定向)
静态内部类
1、静态内部类中不能用到外部类中的非静态变量
2、静态内部类不依赖外部类实例,可以直接 new 静态内部类(此处相当于就是外部类),静态内部类里全是静态变量、方法则不需要new,否则如果需要用到静态内部类中的 非静态方法、变量,则需要new
原文:http://5070780.blog.51cto.com/5060780/1357630