软件设计6大原则中的依赖倒置原则,高层模块不应该依赖低层模块,两者都应该依赖其抽象。
这里的list和接口都是抽象,依赖的类应该依赖抽象,而不是具体实现。 写成ArrayList<Object> list = new ArrayList<>(),那么依赖他的方法参数只能是ArrayList,不能是LinkedList,如果真的要修改具体实现就需要改多行代码,代码维护复杂。
所以我们在实际编程中,只要遵循一下几点:
1. 每个类尽量提供接口或者抽象类,或者两者都具备。
2. 变量的声明类型尽量是接口或者是抽象类。