### 继承的含义
继承描述的是事物之间的所属关系,这种关系是:`is-a` 的关系。例如,兔子属于食草动物,食草动物属于动物。可见,父类更通用,子类更具体。我们通过继承,可以使多种事物之间形成一种关系体系。
**继承**:就是子类继承父类的**属性**和**行为**,使得子类对象可以直接具有与父类相同的属性、相同的行为。子类可以直接访问父类中的**非私有**的属性和行为。
### 继承的好处
1. 提高**代码的复用性**(减少代码冗余,相同代码重复利用)。
2. 使类与类之间产生了关系。
继承的格式
class 父类 {
...
}
class 子类 extends 父类 {
...
}
### 案例演示
按如下需求定义类:
1. 人类
成员变量: 姓名,年龄
成员方法: 吃饭
2. 学生类
成员变量: 姓名,年龄,成绩
成员方法: 吃饭
代码如下:
class Person {
private String name;
private int age;
public Person() {
System.out.println("父类无参");
}
// getter/setter省略
}
class Student extends Person {
private double score;
public Student() {
//super(); // 调用父类无参,默认就存在,可以不写,必须再第一行
System.out.println("子类无参");
}
public Student(double score) {
//super(); // 调用父类无参,默认就存在,可以不写,必须再第一行
this.score = score;
System.out.println("子类有参");
}
}
public class Demo07 {
public static void main(String[] args) {
Student s1 = new Student();
System.out.println("----------");
Student s2 = new Student(99.9);
}
}
输出结果:
父类无参
子类无参
----------
父类无参
子类有参