跟der包学习java_day8「继承(Inheritance)」
今日目标
- 理解继承的意义和核心作用(代码复用、扩展)
 - 掌握继承的语法(
extends关键字) - 理解父类与子类的关系,以及方法重写(
@Override) - 了解
super关键字的用法 
一、为什么需要继承?
假设我们要定义 “学生类” 和 “老师类”,它们的代码可能是这样的:
// 学生类
class Student {private String name; // 姓名private int age;     // 年龄// getter/setterpublic String getName() { return name; }public void setName(String name) { this.name = name; }public int getAge() { return age; }public void setAge(int age) { this.age = age; }// 学生独有的方法public void study() {System.out.println(name + "在学习");}
}// 老师类
class Teacher {private String name; // 姓名(和Student重复)private int age;     // 年龄(和Student重复)// getter/setter(和Student重复)public String getName() { return name; }public void setName(String name) { this.name = name; }public int getAge() { return age; }public void setAge(int age) { this.age = age; }// 老师独有的方法public void teach() {System.out.println(name + "在讲课");}
} 
问题:两个类都有name、age属性和对应的getter/setter,代码重复,维护成本高(比如修改name的逻辑,需要改两个类)。
继承的解决思路:提取共同部分,定义一个 “父类(如 Person 类)”,让 Student 和 Teacher “继承” 这个父类,从而复用父类的属性和方法,只关注自己独有的内容。
二、继承的基本语法
1. 定义父类(超类、基类)
// 父类:封装学生和老师的共同属性和方法
class Person {private Str