java通过extends实现单继承,子类复用父类public/protected成员,不可继承private成员和构造方法;子类可重写父类方法(需同签名、访问权限不更严格),并须显式调用父类构造器(若无无参构造器)。

Java 中通过 extends 关键字实现继承,表示一个类(子类)基于另一个类(父类)扩展功能,复用其字段和方法,并可添加新成员或重写已有行为。
基本语法:子类继承父类
使用 extends 关键字写在子类声明后、类体前,紧跟父类名:
class 子类名 extends 父类名 { ... }例如:
class Animal { void speak() { System.out.println("发出声音"); } }class Dog extends Animal { void bark() { System.out.println("汪汪!"); } }
此时 Dog 继承了 Animal 的 speak() 方法,还能调用自己的 bark() 方法。
继承的访问限制:只能继承 public 和 protected 成员
子类自动获得父类中 public 和 protected 的字段与方法;private 成员不可直接访问,但可通过父类提供的 public/protected 方法间接使用。
- 构造方法不被继承,但子类构造器默认会先调用父类无参构造器(可通过 super() 显式调用)
- 若父类没有无参构造器,子类必须在第一行用 super(…) 调用带参构造器,否则编译报错
方法重写(Override):扩展或修改父类行为
子类可定义与父类签名完全相同的方法(同名、同参数、同返回类型),实现自己的逻辑。需注意:
- 重写方法的访问权限不能比父类更严格(如父类是 protected,子类不能是 private)
- 建议加上 @Override 注解,帮助编译器检查是否真为重写,避免拼写错误
- 重写不改变继承关系本身,只是运行时动态绑定具体执行哪个版本
单继承限制:Java 不支持多继承类
一个类只能用 extends 继承一个直接父类(即单继承),但可通过接口(implements)实现多重行为抽象。
- 例如:class Bird extends Animal implements Flyable, Singable
- 这既复用了 Animal 的共性,又实现了多个能力契约
Java免费学习笔记:立即使用
解锁 Java 大师之旅:从入门到精通的终极指南











