java抽象类和接口 车行
时间: 2024-11-23 15:28:51 浏览: 0
在Java中,抽象类和接口都是用于实现面向对象设计中的抽象概念,它们的主要区别在于:
1. **抽象类**:
- 抽象类可以包含抽象方法(没有实现的方法,前面通常有`abstract`关键字),也可以包含非抽象方法和字段(实例变量)。
- 实现抽象类需要提供所有抽象方法的实现,若某个类只有一个抽象方法,那么这个类也可以声明为抽象的。
- 类可以从一个或多个抽象类派生,但一个类只能继承一个抽象类。
2. **接口**:
- 接口是一组抽象方法的集合,不允许有任何实现(除了默认方法和静态方法,可以提供默认实现)。
- 一个类可以实现多个接口,通过`implements`关键字。
- 接口中定义的所有方法默认是公共 abstract 的,不需要显式地设置为抽象。
**车行场景应用**:
- 如果我们创建一个“车”系统,可能会有一个抽象的"车辆"抽象类,它定义了一些通用的行为如"启动"、"停止"等。然后,具体的车辆(比如"轿车"、"卡车")作为它的子类,实现这些抽象方法。
- 另一方面,我们可以有个"驾驶许可"接口,定义了驾驶员应该具备的基本技能,如"开车"、"倒车"等。不同的车型可能都需要不同的驾驶许可证。
阅读全文