今天是真的赶上了进度,下次就是一天一个了。
今天我们学习了继承,方法的重写,super关键字,
首先如果一个类没有继承任何类的时候,其实默认继承了Object类
一。继承:
子类可以继承父类的非私有的成员变量和成员方法
除了继承父类的相关成员变量和成员方法之外还可以拥有自己的属性和行为
总结:子类的功能要比父类强大
1、方法的重写:
定义:方法名相同,参数列表和参数类型都相同的,只有方法体不同的方法,只有在继承中
备注:如果父类的成员方法有重写,那么执行重写后的成员方法,那么执行重写后的成员方法,没有重写则执行父类的成员方法。
2、super关键字:
作用:调用父类中的相关构造方法,如果自己不写,那么系统会自动添加一个super();往往我们通过快捷键自动生成构造方法即可。
备注:super构造方法的首行,和this关键字不能共存,如果两个都需要的话,super()可以不写,系统会自行解决两者共存关系,我们程序员不用解决。
3、继承的好处
a、提高了代码的复用性,可维护性
b、让雷玉磊之间产生了关系,为多态提供了前提条件
4、继承的弊端
a、让类产生了关联,违反了软件工程理念:低耦合高内聚
二、static关键字
1、static修饰成员变量,此时不在是成员变量,称为静态变量(类变量),可以通过类名.变量名 访问该变量,不需要创建对象之后通过引用访问。
2、static修饰成员方法,此时不在是成员方法,称为静态方法(类方法),可以通过类名.方法名直接访问。
3、static代码块
语法:static{
代码块
}
静态代码块的执行优先级最高,它在类加载的时候就已经执行了。且只执行一次。往往用来加载图片,音频,视频等多媒体事务。
4、构造代码块
语法:{
代码块
}
构造代码块必须在创建对象的时候才被执行,否则不执行。可以执行多次。