为什么是List list = new ArrayList(),而不直接用ArrayList

查了很多资料,看到大家说是体现了面向对象变成的思想等,也有人说是为了更好的拓展性,但是从实际开发上看,至少我周围同事是没有使用过这个特性,很多人宁愿直接拷贝过去,这样逻辑更清楚,有的同事直接告诉我,哪个都可以
那问题来了,有什么理由非用list来声明变量呢?
我自己是这样认为的,这应该是一个约定俗成的习惯,本意确实是为了以后的拓展性,但事实上体现这种实例化对象优势的情况少之又少,这就想你家电视后面的接口,有些接口报废了都从来没用过一个道理,有些东西只是为了特殊情况而预留的,而并非是常用的。
所以,采用面向接口编程的设计模式,本质上是为了更高拓展性,只不过这种拓展性大部分情况下,即便你做了几个项目都很难有机会遇到,就像修大桥不能顶着设计载重量去造,一定留些冗余,越来越觉得软件是一种工程了

©️2020 CSDN 皮肤主题: 大白 设计师:CSDN官方博客 返回首页