suisuibianbian132 2016-08-09 06:33 采纳率: 50%
浏览 793

请问为什么我们在写java集合时总喜欢用接口回调?

我疑惑点有2个

1.你直接用ArrayList list=new ArrayList()不就可以了吗?
2.用List来实现接口回调的话 ,ArrayList里的一些方法你又用不了。
Map也是同样的疑惑

  • 写回答

1条回答 默认 最新

  • wolf犭良 2016-08-09 15:18
    关注

    List list = new ArrayList();
    这样的写法,是为了让后面的操作都是面向List接口的,而面向接口编程方便后期维护或扩展,因为List有三个子类:ArrayList、LinkedList、Vector,
    若后期要考虑线程安全或提高增删元素速度等,就会考虑用其他实现类。这时只需要修改创建对象一个地方,而后面的代码基本不需要动。
    如果明确用到某个现实类的特有方法就可以选择第二种写法了。

    评论

报告相同问题?

悬赏问题

  • ¥15 无线电能传输系统MATLAB仿真问题
  • ¥50 如何用脚本实现输入法的热键设置
  • ¥20 我想使用一些网络协议或者部分协议也行,主要想实现类似于traceroute的一定步长内的路由拓扑功能
  • ¥30 深度学习,前后端连接
  • ¥15 孟德尔随机化结果不一致
  • ¥15 apm2.8飞控罗盘bad health,加速度计校准失败
  • ¥15 求解O-S方程的特征值问题给出边界层布拉休斯平行流的中性曲线
  • ¥15 谁有desed数据集呀
  • ¥20 手写数字识别运行c仿真时,程序报错错误代码sim211-100
  • ¥15 关于#hadoop#的问题