1、单一职责 一个接口实现一个功能2、里氏替换 使用基类作为参数3、依赖倒置 接口之间产生依赖4、接口隔离 接口中的方法尽量少5、迪米特法则(Law of Demeter,LoD) 也称为最少知识原则(Least KnowledgePrinciple,LKP),一个对象应该对其他对象有最少的了解