还剩2页未读,继续阅读
文本内容:
程序员集合框架面试题集合框架面试题集合框架是最常被问到的面试问题,要理解技术强大特性,就有必要驾驭集合框架下面就由小编为大家介绍一下程序员集合框架面试题的文章,欢迎阅读程序员集合框架面试题篇
11、什么是集合集合框架是用来表示和操作集合的统一框架,它包含接口、实现类、以与帮助程序员完成一些编程的算法简言之,在上层完成以下几件事•编程更加省力,提高城程序速度和代码质量•非关联的提高互操作性•节约学习运用新成本•节约设计新的时间•激励、促进软件重用详细来说,有6个集合接口,最基本的是接口,由三个接口、、继承,另外两个接口是、,这两个接口不继承,表示映射而不是真正的集合
2、什么是一些集合类供应了内容遍历的功能,通过接口这些接口允许遍历对象的集合依次操作每个元素对象当运用时,在获得的时候包含一个集合快照通常在遍历一个的时候不建议修改集合本省
3、与有什么区分?:只能正向遍历集合,适用于获得移除元素继承,可以双向列表的遍历,同样支持元素的修改程序员集合框架面试题篇
21、什么是和?是接口,集合框架中一部分,用于存储键值对,是用哈希算法实现的类
2、与有什么区分对比两者都是用方式获得数据是原始集合类之一(也称作遗留类)作为新集合框架的一部分在2的
1.2版本中加入它们之间有一下区分和大致是等同的,除了非同步和空值(允许值作为和,而不行以)・没法保证映射的依次始终不变,但是作为的子类,假如想要预知的依・次迭代(默认根据插入依次),你可以很轻易的置换为,假如运用就没那么简洁了不是同步的,而是同步的・•迭代采纳快速失败机制,而不是,所以这是设计的考虑点
3、在上下文中同步是什么意思?同步意味着在一个时间点只能有一个线程可以修改哈希表,任何线程在执行的更新操作前须要获得对象锁,其他线程等待锁的释放
4、什么叫做快速失败特性从高级别层次来说快速失败是一个系统或软件对于其故障做出的响应一个快速失败系统设计用来即时报告可能会导致失败的任何故障状况,它通常用来停止正常的操作而不是尝试接着做可能有缺陷的工作当有问题发生时,快速失败系统即时可见地发错错误告警在中,快速失败与有关假如一个在集合对象上创建了,其它线程欲“结构化”的修改该集合对象,并发修改异样()抛出程序员集合框架面试题篇
31、怎样使同步?可以通过m=()来达到同步的效果
2、什么时候运用,什么时候运用基本的不同点是同步不是的,所以无论什么时候有多个线程访问相同实例的可能时,就应当运用,反之运用非线程平安的数据结构能带来更好的性能假如在将来有一种可能一你须要按依次获得键值对的方案时,是一个很好的选择,因为有的一个子类所以假如你想可预料的按依次迭代(默认按插入的依次),你可以很便利用替换反观要是运用的就没那么简洁To同时假如有多个线程访问,()可以代替,总的来说更敏捷
3、为什么类认为是废弃的或者是非官方地不举荐运用?或者说为什么我们应当始终运用而不是你应当运用而不是是因为默认状况下你是非同步访问的,同步了每个方法,你几乎从不要那样做,通常有想要同步的是整个操作序列同步单个的操作也担心全(假如你迭代一个,你还是要加锁,以避开其它线程在同一时刻变更集合).而且效率更慢当然同样有锁的开销即使你不须要,这是个很糟糕的方法在默认状况下同步访问你可以始终运用来装饰一个集合事实上结合了“可变数组”的集合和同步每个操作的实现这是另外一个设计上的缺陷还有些遗留的方法在枚举和元素获得的方法,这些方法不同于接口,假如这些方法在代码中程序员更趋向于想用它尽管枚举速度更快,但是他们不能检查假如集合在迭代的时候修改了,这样将导致问题尽管以上诸多缘由,也从没宣称过要废弃.。