老师我想问下关于List的问题
以及这里,都是用List list=new ArrayList();
这是为什么呢?为什么不直接用ArrayList list=new ArrayList();呢?
这又不是写DAO和Impl,为啥要这样用List引用去指向一个ArrayList呢?
我知道List是接口,ArrayList是List接口的其中一个实现类
用List list=new ArrayList();这样写有什么好处吗?
9
收起
正在回答
2回答
同学很棒,
你的理解都是正确的呢~
祝:学习愉快~
吃吃吃鱼的猫
2019-05-26 14:22:57
同学你好,
面向对象编程,是针对抽象(接口),而非具体。
List 是接口,ArrayList是实现。
实现List接口的有ArrayList、LinkedList、Vector等,所以用哪个就直接new 一个接口实现。大大提高了代码使用的灵活性。
比如,你若希望用LinkedList的实现来替代ArrayList的话,只需改动一行即可:
List list = new LinkedList();
而程序中的其它部分不需要改动,这样比较灵活,不会失去通用性。
不过有的时候,你如果能确定后边用的全部是ArrayList,建议使用:
ArrayList list = new ArrayList();
如果我的回答解决了你的疑惑,请采纳。祝:学习愉快~
3. Java 数据库开发与实战应用
- 参与学习 人
- 提交作业 357 份
- 解答问题 8016 个
本阶段将带你学习MySQL数据库,JDBC接口,MyBatis框架等,带你掌握的数据的存放和管理。
了解课程
恭喜解决一个难题,获得1积分~
来为老师/同学的回答评分吧
0 星