接口和抽象类的区别:
    抽象类是对子类的公共特征的提取,接口是定义一个特殊的功能,看子类是否需要实现这个功能,即不是所有的子类都拥有接口定义的功能,但是所有子类都拥有抽象类定义的公共特征。
    比如:宝马,奔驰和吉利汽车,他们中可以抽取出一个抽象类Car,Car有方法Drive,转弯,播放音乐。但是不是所有的车都有能力跑出200公里每小时的能力;其中宝马可以它就implements Interface superCar,而接口superCar有RunFast的方法。