06 2020 档案
摘要:内部类也可以被继承,但是因为内部类的构造器必须连接到其外围类的对象的引用,所以在继承内部类的时候,事情会变得复杂。 那个指向外围类对象的“秘密的”引用必须初始化,而内部类的导出类不再存在可连接的默认对象,要解决这个问题,必须用特殊的语法来说明他们之间的关联 package chapter10; cl
阅读全文
摘要:嵌套类定义 如果一个内部类生命为static,这种静态内部类称为嵌套类,嵌套类的对象不需要持有外围类的对象的引用。 1) 要创建嵌套类的对象,并不需要器外围类的对象 2)不能从嵌套类的对象中访问非静态的外围类对象,因为嵌套类的对象没有指向外围类对象的引用,因此无法访问外围类对象。 嵌套类与普通内部类
阅读全文
摘要:一 匿名内部类的定义 匿名内部类是继承某个类或者实现某个接口的没有类名的类,因为没有类名,所以需要类对象的创建与类的定义放在一条语句中。 二采用默认构造器创建匿名内部类 如下例: 接口Contents package chapter10; public interface Contents { in
阅读全文
摘要:在一个类的内部定义一个类(没有被static关键字修饰),这个类内部的类就是内部类。外部类的权限只有默认访问权限或者包访问权限。 如果有别的访问权限修饰符,会报如下的编译器错误: Illegal modifier for the class Test; only public, abstract &
阅读全文
摘要:在父类的构造器中调用被子类重载的方法,当实例化子类时,父类构造器中调用的方法不是父类中的方法,而是被子类重载后的方法 父类: 子类: 运行结果 看到的输出结果中,父类在构造器中调用被子类重载的方法,发现调用的是子类重载后的方法,说明此是在构造器中方法的绑定时动态绑定。 而此是输出的i的值时0,既不是
阅读全文