当前位置:首页 > Java知识 > 正文内容

58赶集总部地址(58赶集网副总裁)

abcsky887个月前 (10-27)Java知识89

本文分享给大家的是:

转:一位同学内推,帮我争取到了58赶集面试的机会没有笔试,直接进入技术面遇到一位工作五年的工程师翟,一脸严肃的把我带到A区四层的一个小方桌前对于只有一年工作经验的我,小有压力上来自我介绍,谈谈做过的项目,只要你思路清楚,表达准确就没什么问题。

58赶集总部地址(58赶集网副总裁)

一般你做的项目和面试的项目也不会有太大相关,就是看看你的思路下面讨论一个令我费解的问题:(1)谈谈Java容器的线程安全与非线程安全?第一,可以谈谈哪些是线程安全的容器,哪些非线程安全的容器ArrayList是非线程安全的,Vector是线程安全的;HashMap是非线程安全的,HashTable是线程安全的;StringBuilder网站怎样做推广是非线程安全的,StringBuffer是线程安全的。

第二,线程安全有什么好处,有什么坏处线程安全即在多线程操作同一个Vector或HashTable对象时不会有任何问题但是线程安全必须要使用很多synchronized关键字来同步控制,所以必然会导致性能的降低。

Java后续版本出才出现了众多非线程安全的容器第三,安全与性能如何取舍如果是多个线程操作同一个对象,那么使用线程安全的Vector;否则,就使用效率更高的ArrayList第四,补充说明,非线程安全!=不安全。

有人在使用过程中有一个不正确的观点:我的程序是多线程的,不能使用ArrayList要使用Vector,这样才安全非线程安全并不网站怎样做推广是多线程环境下就不能使用注意我上面有说到:多线程操作同一个对象注意是同一个对象。

如果是每个线程中new一个ArrayList,而这个ArrayList只在这一个线程中使用,那么肯定是没问题的多个线程操作同一个对象的测试代码:

图1 测试多线程操作同一个对象(2)谈谈Java容器类的数据结构?第一、谈谈Java容器类的框架图,如果你能够画出来的话,对方肯定会暗自佩服你的逻辑。

图2. Java集合框架图

图3. Java集合框架简化图如图所示:①集合接口:6个接口(短虚线表示),表示不同集合类型,是集合框架的基础②抽象类:5个抽象类(长虚线表示),对集合接口的部分实现,可扩展为自定义集合类③实现类:8网站怎样做推广个实现类(实线表示),对接口的具体实现。

接口详解:· Collection 接口是一组允许重复的对象· Set 接口继承 Collection,但不允许重复使用自己内部的一个排列机制· List 接口继承 Collection,允许重复,以元素插人的次序来放置元素。

不会重新排列· Map接口是一组成对的键-值对象,即所持有的是key-value pairsMap中不能有重复的key拥有自己的内部排列机制第二,谈谈具体的实现机制,1. Set子接口:无序,不允许重复。

List子接口:有序,可以有重复元素具体区别是:Set:检索元素效率低下,删除和插入效率高,插入和删除不会引起元素位置改变List网站怎样做推广:和数组类似,List可以动态增长,查找元素效率高,插入删除元素效率低,因为会引起其他元素位置改变。

2. 实例比较HashSet:以哈希表的形式存放元素,插入删除速度很快TreeSet:以二叉树的形式存放元素ArrayList:动态数组,LinkedList:链表、队列、堆栈。

Vector是一种老的动态数组,是线程同步的,效率很低,一般不赞成使用。

扫描二维码推送至手机访问。

版权声明:本文由海南拓宏网络科技工作室发布,如需转载请注明出处。

本文链接:http://4blc.com/post/412.html

分享给朋友:

“58赶集总部地址(58赶集网副总裁)” 的相关文章

为什么大量的软件开发人员没有足够重视需求工程(在大型软件开发中用户承担的工作是)

本篇文章给大家谈谈 有两种类型的开发人员,优秀的开发人员和聪明的开发人员,你是哪一种?掌握一些技巧能让我们变成一个聪明的开发人员1)main()函数的不同写法从使用 java 的第一天开始,我们应该就会这么写:public class Example {public static...

java和c的区别和联系(java和c区别大吗)

本篇文章给大家谈谈 java和C++都是面向对象的编程语言,但它们之间也存在着不同在Java中,一切都是一种抗议(从Java.lang.Object获得一切时,命令的单根链)在C++中,没有这样的命令根链C++既支持过程编程,也支持面向对象的编程;通过这种方式,它被称为混合编程。...

萌妹子搞笑段子(一女子搞笑段子)

今天给各位分享 原标题:搞笑段子:一妹子问我:SM是什么意思啊?我说:失眠的意思1. 搞笑段子:今天开会的时候,老板突然深吸一口气,好严肃的说:我是一个菠萝大家都愣住了,开始思索自己是什么水果,接着,他说,希望你们能是我的千里马....。 2. 搞笑段子:下班晚了点赶紧跑回...

为什么都用java(java为什么不能用printf)

今天给各位分享   Python和Java都是这个时代广泛使用的编程语言不过,与 Java 语言相比,Python 语言在编码行数方面效率更高,它从一个简单的问题开始,与相同工作目的的 Python 相比,java则需要更多的编码行数。 但是,为什么人们仍在使用 Java...

前端测试题网站(1+x前端初级考试)

本篇文章给大家谈谈 双111111试学前端/Java系统班在双十一结束之际,谷里特意奉上大礼,11.11元试学一周前端/Java课程,话不多说,请看下文详细介绍: 时间11月12日—11月30日 内容11月12日开始,可报名参加11.11元的饥人谷前端/Java系统...

长沙java软件开发培训(长沙学编程的正规学校)

本文分享给大家的是: 长沙学习Java编程前景如何?去培训班学需要花多少钱 Java开发已经悄无声息的走进我们的生活中,无论是手机软件、手机Java游戏还是电脑软件等,只要你使用到电子产品就会碰到和Java有关的东西,更多的企业正采用Java语言开发网站,也吸引了好多志同道合的朋友...