2019年6月

1.接口针对方法做限制,实现类必须实现接口的所有方法,可以看做是特殊的抽象类
2.抽象类存在的意义是多态(以及不可实例化-即内部没有抽象方法的情况,此时唯有实现类继承该类按需求进行覆盖),原则上实际开发中尽量保证抽象类必须含有抽象方法(可以不含有)
3.抽象类的重要作用是衔接接口与实现类,如在抽象类中实现部分接口方法作为所有实现类的公用方法,各个实现类相应选择各自的方式实现抽象类(父类)未实现的方法(当然,实现类也可以全部覆盖抽象类父类的方法)
4.接口可以看做解决单继承限制的方案,traits也可以看做有相同功能
5.接口可以继承接口(同样使用extends),可理解为接口横向扩展,同时保持各自接口独立性(有需求单个接口、多个接口的情况)而不必臃肿接口继而臃肿实现类