抽象类是把一些具有共性的类进行抽象,抽出公共部分行程抽象类,提高代码复用性,是一个自下而上的过程,从具体类中抽象而来形成抽象类,表示一种 is-a 的关系。 接口定义了类的行为,是一种契约,表名类可以做什么,提高代码的扩展性,是一个自上而下的过程,先定义好要完成的功能,具体类去实现,表示一种 has-a 的关系。
is-a
has-a