继承与多态

构造方法的重载,只需要看参数即可。
如果在一个构造方法中调用另一个构造方法,那么可以使用this()这句代码来调用。
this()括号中的参数是目标构造方法的参数。
this()必须要作为构造方法的第一条语句,在构造方法内this()之前不能有可执行的代码。
继承 inheritence

继承的定义
Java中是单继承。意味着一个类只能从另一个类继承。
被继承的类被称为父类。
继承的关键字:extends
当生成子类的对象的时候,java默认,先调用父类的不带参数构造方法,然后执行该构造方法,生成父类的对象。接下来,再调用子类的构造方法,生成子类的对象。
要想生成子类的对象,必须先生成父类的对象。
没有父类的对象,就没有子类的对象。

Super关键字
如果非要运行父类特定的构造方法,可以使用super关键字表示对父类对象的引用。
This关键字表示对子类对象的引用。
Super也必须要作为构造方法的第一条语句。

关于继承的特性:
父类有的,子类也有
父类没有的,子类也可以有
父类有的,子类可以改变

关于继承的注意事项:

A)构造方法不能被继承。
B)方法和属性可以被继承
C)子类的构造方法隐式地调用父类的不带参数的构造方法
D)当父类有没有不带参数的构造方法时,子类需要使用super来显式地调用父类的构造方法,super是对父类的引用。
E)super关键字必须是构造方法中第一行语句。

方法重写:又叫做覆写,子类和父类的方法返回类型一样,方法名称一样,参数一样,这样我们说子类和父类的方法构成了重写关系。

方法重写与方法重载之间的关系:
重载发生在同一个类内部的两个或者多个方法。重写发生在父类与子类之间。

当两个方法形成重写关系时,可以在子类方法中通过super.run()形式调用父类的方法,其中super.run()不必放在第一行语句,因此此时父类对象已经构造完毕,先调用父类的run()方法还是先调用子类的run()方法时根据程序的逻辑决定的。

在定义一个类的时候,如果没有显式的指定该类的父类,那么该类就会继承与java.lang.Object类(jdk提供的一个类,Object类是java中所有类的直接或者间接父类)。


Java.SE.第十九讲.多态详解
多态:父类型的引用可以指向子类的对象。但是它的类型是父类型的。
Parent p = new Child();当使用多态方式调用方法的时候,首先检验父类中是否有sing()方法,如果没有,则编译错误;如果有,则调用子类的sing()方法。
一共有两种类型的强制类型转换:
向上的类型转换(upcast):比如说将cat类型转换为animal类 型,即将子类型转换为父类型。对于向上类型转换,不需要显式指定。
向下类型转换:比如将animal类型转化为cat类型。即将父类型转化为子类型。对于向下类型转化,必须要显示指定(必须要使用强制类型转化)。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值