类继承
Posted chy18883701161
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了类继承相关的知识,希望对你有一定的参考价值。
父类,也称为基类、超类。
语法:
修饰符 class 子类名 extends 父类名{
.......
}
方法重写,也叫方法覆盖,要求:
方法名相同、形参表相同,
子类方法的返回值类型要小于或等于父类方法的返回值类型,
子类方法抛出的异常类要小于或等于父类方法抛出的异常类,
子类方法的访问权限要大于或等于父类方法的访问权限,
要么都是类方法(static),要么都是实例方法。
在子类中访问父类中被覆盖的成员:
super.父类中被覆盖的方法名() //调用被覆盖的父类方法
super.父类中被覆盖的成员变量名 //使用父类中被覆盖的成员变量名
super(参数表) //调用父类中对应的构造函数
在子类的构造函数中,可以:
super(参数表); //显式调用父类的构造函数,若要使用,必须放在方法体的第一行
this(参数表); //显式调用当前类(子类)的其它构造函数,若要使用,必须放在方法体的第一行
若子类的构造函数中没有调用super(参数表)或this(参数表),则在执行当前类(子类)的构造函数之前,系统会隐式调用父类无参的构造函数。
super(); //调用父类无参的构造函数
this(); //调用当前类无参的构造函数
继承实现了复用,但破坏了类的封装性。
要调用另一个类中的public方法,可以new一个该类的对象,通过该对象来调用public方法。
也可以继承该类,直接调用该类的public方法。(除非必须,否则不要轻易继承,因为破坏了类的封装性)
一个.java文件中最多只能有一个public类,若有public类,该类名必须与.java文件同名。
再类外使用static成员时,可通过对象名或类名调用,最好通过类名调用,这样更规范。
static方法只能访问static成员,其它方法可以访问类的所有成员(包括static成员)。
以上是关于类继承的主要内容,如果未能解决你的问题,请参考以下文章