定义:高层模块不应该依赖低层模块,二者应该依赖其抽象。 抽象不应该依赖细节;细节应该依赖缓抽象 针对接口编程,不应该针对实现编程 优点:可以减少类间的耦合性,提高系统稳定性,提高代码可读性和可维护性,可降低修改程序所造成的风险