文档给出了一个带有接口的类作为示例,该类具有已实现的方法而不是抽象的方法。
想要实现接口的类被强制实现该函数,这总是会覆盖原来的函数。
那么,标有接口的类已经实现了某个功能,在什么场景下有用呢?
interface class Vehicle {
void moveForward(int meters) {
// ...
}
}
class MockVehicle implements Vehicle {
@override
void moveForward(int meters) {
// ...
}
}
继承不需要您实现或重写方法,如果您提供了默认行为,您可以根据需要选择重写方法。
interface class Vehicle {
void moveForward(int meters) {
// default behavior
}
}
class Car implements Vehicle {
// Inherits the default moveForward method from Vehicle
}
class Truck implements Vehicle {
@override
void moveForward(int meters) {
// custom behavior
}
}
在这种情况下,Car 不需要实现 moveForward,因为默认实现就足够了。