目录
一、创建
1.语法:
[访问控制修饰符] [非访问控制修饰符] class 子类名 extends 父类名{ 类体 }
项目 | 含义 |
---|---|
含义 | 继承父类的属性和方法 |
目的 | 复用代码,便于维护 |
父类别名 | 基类或超类 |
特性 | 单继承(即子类只有一个父类,父类可以有多个子类) |
object类 | java中,是所有的类的父类 |
2.注意
1.同一构造器,只能引用一个构造器。
2.同一构造器,this(参数)和super(参数)只能出现一个。
二、调用
1.调用父类方法——为被重写
项目 | 含义 |
---|---|
直接访问父类 | 非private修饰的属性和方法 |
间接访问父类 | private修饰的属性和方法 |
2.调用父类方法——被重写后
语法:super父类被重写方法名()
注意:该语法,只能出现在子类的方法体中
项目 | 含义 |
---|---|
目的 | 继承父类时,展现特性 |
别名 | 覆盖(override) |
重写父类 | 一大两小两同 |
访问控制修饰符 | 不小于父类 |
非访问控制修饰符 | 不限 |
返回值类型 | 不大于父类 |
抛出的异常类 | 不大于父类 |
方法名 | 与父类相同 |
参数列表 | 与父类相同 |
3.调用父类方法——构造器
语法:
[ 访问控制修饰符 ] [ 非访问控制修饰符 ] 类名{ super(参数列表);…}
注意:
1.一个子类构造器中,super(参数)必须放置有效执行方法体首行。
2.一个子类构造器中,super(参数)只能出现一次。
3.一个子类构造器中,super(参数)必须出现一次。
三、具体操作
1.主函数入口源文件:
public class MainEntrance{
public static void main(String[] args){
}
}
2.动物类源文件:
public class Animal{
// 封装属性:动物共性,名字和年龄。
private String name;
private int age;
/* 构造器:无参。
* 被调用:子类构造器必须调用父类构造器。
* 此处目的:防止子类没有调用父类有参构造函数时,报错情况发生。
*
*/
public Animal(){
}
public Animal(String name, int age){
}
3.兔子类源文件:
public class Rabbit{
}
4.狼类源文件:
public class Wolf{
}