何时必须使用接口而不是抽象类?
我想知道什么时候应该使用接口。
让我们考虑以下几点:
public abstract class Vehicle {
abstract float getSpeed();
}
和:
public interface IVehicle {
float getSpeed();
}
我可以很容易地实现它们,它们具有相同的功能...但是我也可以向我的车辆类别添加一些变量,这些变量可能应该在车辆中使用(maxSpeed,carType...)
使用接口的原因是什么?
谢谢!
编辑:我在另一个线程中发现了一个很好的链接:http://www.thecoldsun.com/en/content/01-2009/abstract-classes-and-interfaces