java编程笔记8 面向对象三 内部类
2011-03-03 22:47
a) 匿名类(区别于匿名对象) 没有明确的类定义格式,是指类的定义和类的对象的创建合并在一起的情况。 匿名类属于一个唯一的对象,在生成接口的同时定义匿名类。
b) 静态类 静态类作为类的静态成员存在于某个类中, class OuterClass { static class InnerClass { ….. } } 可以将它看做类的静态成员,static成员不需要创建OuterClass的对象可以直接使用,即在不创建OuterClass的对象的情况下,直接创建InnerClass的对象。 在OuterClass内部: InnerClass obj = new InnerClass(); 在OuterClass外部: OuterClass. InnerClass obj = new OuterClass. InnerClass();
c) 成员类
成员类作为一般的成员变量存在于类中,定义一个成员类和定义一个一般类没有差别。 class OuterClass { class InnerClass { ….. } }
和使用一般的成员变量一样,只有创建了OuterClass对象后,才能创建InnerClass对象 OuterClass objout = new OuterClass(); objout. InnerClass objin = new objout.InnerClass();
d) 局部类 局部类和局部变量一样,定义在方法内部。局部类也是只能在方法内部使用,方法执行完后就消失。 |