Java核心技术·卷1:基础知识(原书第9版) 8.4分
读书笔记 第5章 继承 5.1 类、超类和子类
Gimo

反射是指在程序运行期间发现更多的类及其属性的能力。比较复杂,主要是开发软件工具而不是编写应用程序的人员感兴趣。 5.1 -- 怎么描述继承? 比如在一个公司中,经理与普通职员都会领取工资,但是经理会有奖金,这种情况就需要用到继承。因为需要为经理定义一个新类Manager,以便增加一些功能。但可以重用Emploeyee类的部分代码,并将其中的所有域保留。Manager和Employee之间存在“is-a”关系,每个经理都是一名雇员。 将通用的方法放在超类中,而将具有特殊用途的方法放在子类中。 对有变化的方法进行重写。 super和this类似? 这种比较不太恰当,super不是一个对象的引用,只是一个指示编译器调用超类方法的特殊关键字。 一个对象变量可以指示多种实际类型的现象被称为多态(polymorphism)。 在运行时能够自动地选择调用哪个方法的现象成为动态绑定(dynamic binding)。 判断是否应该设计为继承关系:“is-a”规则 动态绑定 1. 编译器查看对象的声明类型和方法名。 f(int)和f(String),编译器进行辨别。 2. 编译器查看提供的参数类型。 3. 如果是private、static、final方法或者构造器,编译器可以准确地知道调用哪个方法,称为静态绑定。 4. 动态绑定,虚拟机查找最适合地方法。 抽象类 每个人都有姓名,getName方法可以放在通用超类中。 抽象类中还可以包含具体数据和具体方法。 即使不含抽象方法,也可以声明为抽象类。

0
《Java核心技术·卷1:基础知识(原书第9版)》的全部笔记 66篇
豆瓣
我们的精神角落
免费下载 iOS / Android 版客户端