抽象类设计出来就是被用来继承的,继承的前提条件就是存在is-a的关系,设计抽象类是个从底向上的过程,先子类然后再提炼出父类,而接口是从上到下的设计过程,就好像设计一个规则,必须存在这个规则的才可以,而且不用存在is-a的关系也可以使用接口。