内部类
1非静态内部类: 。隐形都有外部类对象的引用 。不准有任何静态数据 。通过new关键字创建内部类时 必须引用外部类对象 如:outClassObject.new InnerClass(); 。如果内部类和外部类的属性重名 对外部类的重名属性引用方式为:OutClass.this.属性名 2.静态内部类: 。可以存在任何静态数据 。可以通过直接new 来得到该对象 3.局部内部类 。定义在一个方法甚至一个代码块之内 例如:
4.匿名内部类 。两种实现:第一种,继承一个类,重写其方法;第二种,实现一个接口(可以是多个),实现其方法; 。语法规则:new interfacename(){......}; 或 new superclassname(){......};
。不能extends其他类,匿名内部类实际也是接口或超类的子类 。注意在使用 匿名内部类对象.getClass().getDeclaredMethods() 返回的是一个Method对象数组 不包括超类中的方法 (参见http://www.javaeye.com/topic/399120)
Powered by: BlogJava Copyright © java-flying