面试题

身为JAVA工作者必须了解的实战知识(四)

2017-08-27  本文已影响32人  a_decb

一、同步容器类

1. 同步容器类的问题

线程容器类都是线程安全的,但是当在其上进行符合操作则需要而外加锁保护其安全性。

常见符合操作包含:

. 迭代

. 跳转(根据指定顺序找到当前元素的下一个元素)

. 条件运算

迭代问题可以查看之前的文章

《Java ConcurrentModificationException 异常分析与解决方案》

二、并发容器

集合类型非线程安全线程安全

ListArrayListCopyOnWriteArrayList

SetSortedSetConcurrentSkipListSet

MapHashMap、SortedMapConcurrentHashMap、ConcurrentSkipListMap、

ConcurrentHashMap

CopyOnWriteArrayList

三、阻塞队列 - 生产者消费者模式

队列 - BlockingQueue

四、阻塞方法与中断方法

以下内容摘录自《温绍锦 - Java并发程序设计教程-》

[java]view plaincopy

print?

// 第一种方式

Thread thread =newThread("interrupt test") {

publicvoidrun() {

for(;;) {

doXXX();

if(Thread.interrupted()) {

break;

}

}

}

};

thread.start();

// 第二种方式

Thread thread =newThread("interrupt test") {

publicvoidrun() {

for(;;) {

try{

doXXX();

}catch(InterruptedException e) {

break;

}catch(Exception e) {

// handle Exception

}

}

}

};

thread.start();

// 第三种方式

publicvoidfoo()throwsInterruptedException {

if(Thread.interrupted()) {

thrownewInterruptedException();

}

}

程序应该对线程中断作出恰当的响应。

五、同步工具类

1. 闭锁 CountDownLatch

2. FutureTask

3. 信号量

4. 栅栏(Barrier)

以上就是我推荐给Java开发者们的一面试经典知识。但是这些知识里面并没有太多Java全栈、Java晋阶、JAVA架构之类的题,不是我不推荐,而是希望大家更多的从基本功做起,打好基础,太多复杂的内容一会儿也说不明白。

好了同学们,我能介绍的也都全部介绍完给你们了,如果下获得更多JAVA教学资源,可以选择来我们这里共同交流,群:240448376,很多大神在这里切磋学习,不懂可以直接问,晚上还有大牛免费直播教学。

注:加群要求

1、具有一定工作经验的,面对目前流行的技术不知从何下手,需要突破技术瓶颈的可以加,有些应届生和实习生也可以加。

2、在公司待久了,过得很安逸,但跳槽时面试碰壁。需要在短时间内进修、跳槽拿高薪的可以加。

3、如果没有工作经验,但基础非常扎实,对java工作机制,常用设计思想,常用java开发框架掌握熟练的,可以加。

4、觉得自己很牛B,一般需求都能搞定。但是所学的知识点没有系统化,很难在技术领域继续突破的可以加。

5.阿里Java高级大牛直播讲解知识点,分享知识,多年工作经验的梳理和总结,带着大家全面、科学地建立自己的技术体系和技术认知!

PS:现在主要讲解的内容是(反射原理枚举原理与应用注解原理常用设计模式、正规表达式高级应用、JAVA操作Office原理详解JAVA图像处理技术,等多个知识点的详解和实战)

6.小号或者小白之类加群一律不给过,谢谢。

最后,每一位读到这里的网友,感谢你们能耐心地看完。觉得对你有帮助可以给个喜欢!希望在成为一名更优秀的Java程序员的道路上,我们可以一起学习、一起进步

上一篇下一篇

猜你喜欢

热点阅读