继承

继承

一、类、超类和子类
1、定义子类

关键字extends表示

已存在的类称为超类 ( superclass)、 基类(base class) 或父类(parent class); 新类称为子类(subclass)、 派生类 (derivedclass) 或孩子类(child class)。

2、覆盖方法

超类中的有些方法对子类 并不一定适用。需要提供一个新的方法来覆盖超类中的这个方法。

要返回 salary 和 bonus 域的总和,这个方法并不能运行。

在子类中可以增加域、 增加方法或覆盖超类的方法,然而绝对 不能删除继承的任何域和方法。

3、子类构造器

使用 super 调用构造器的语句必须是子类构造器的第一条语句。

如果子类的构造器没有显式地调用超类的构造器, 则将自动地调用超类默认(没有参数) 的构造器。 如果超类没有不带参数的构造器, 并且在子类的构造器中又没有显式地调用超类 的其他构造器器,则 Java 编译器将报告错误。

super 关键字也有两个用途:一是调用超类的方法,二是调用超类的构造器。

4、继承层次

由一个公共超类派生出来的所有类的集合被称为继承层次(inheritance hierarchy), 如图 5-1 所示。在继承 层次中, 从某个特定的类到其祖先的路径被称为该类的继承链 (inheritance chain),同时一个父类可以存在多个子类

5、多态、

多态事同一个行为具有多个不同表现形式或形态的能力

多态的优点

1.消除类型之间的耦合关系

2.可替换性

3.可扩充性

4.接口性

5.灵活性

6.简化性

6、强制类型转换

只能在继承层次内进行类型转换

在将超类转换成子类之前,应该使用instanceof进行检查

7、抽象类
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值