Java面试知识点(十)ArrayList 和面向接口编程

欲构造 ArrayList 类的一个实例,此类实现了 List 接口,

List myList=new ArrayList()

属于面向接口编程,是 java 语言的一大优点。ArrayList 虽然是一个具体的类,按照 ArrayList myList=new ArrayList (); 的确也可以生成一个 myList 对象,而且编译也不会报错。但是在实际开发中是不采用这样的方式,即实际开发时都是 接口名 xxx=new 接口某实现类()。这样便于
1、便于程序规范化设计
2、便与团队协同开发
3、便于转换为组件
4、方便的代码复用,无需了解技术细节。

接口是一组规则的集合,它规定了实现本接口的类或接口必须拥有的一组规则。体现了自然界 “如果你是…… 则必须能……” 的理念。

当下层需要改变时,只要接口及接口功能不变,则上层不用做任何修改。甚至可以在不改动上层代码时将下层整个替换掉,就像我们将一个 WD 的 60G 硬盘换成一个希捷的 160G 的硬盘,计算机其他地方不用做任何改动,而是把原硬盘拔下来、新硬盘插上就行了,因为计算机其他部分不依赖具体硬盘,而只依赖一个 IDE 接口,只要硬盘实现了这个接口,就可以替换上去。

所以,别的模块依赖的是抽象的接口,而不是接口的实现,在开发的时候,完全可以把接口先抽象出来在并行开发,接口的好处不是针对实现接口的类而是对依赖接口功能的其他模块

补充1:
在接口里面的变量默认都是 public static final 的,它们是公共的 , 静态的 , 最终的常量。相当于全局常量,可以直接省略修饰符。

  • 2
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 1
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值