2023年高质量的Java高级工程师面试题

本文整理了2023年Java高级工程师面试常见问题,包括volatile特性、Spring的AOP和IOC概念、动态代理、IOC原理,以及HashMap的底层实现,涉及红黑树和并发安全问题。同时提到了并发环境下HashMap的安全隐患和解决方案,如 ConcurrentHashMap 的使用。文章适合准备跳槽的Java开发者复习和提升。
摘要由CSDN通过智能技术生成

说道Java工程师面试题,相信大家最先想到的就是马上要到金三银四的时间段了,潜意识里对于就业现状不太满意的同学开始进行跳槽的准备,对于程序员的跳槽,准备工作肯定是要充足的,一套合理的高级java工程师面试题,能够让面试的成功率大大提高,但未必每个人都能找到合适的面试题,为了大家能够把握机会,小编整理了一些大厂面试出现率很高的java工程师面试题,希望可以帮助到大家:

1.volatile有三个特性:可见性,不保证原子性,禁止指令重排。

1.1 可见性:线程1从主内存中拿数据1到自己的线程工作空间进行操作(假设是加1)这个时候数据1已经改为数据2了,将数据2写回主内存时通知其他线程(线程2,线程3),主内存中的数据1已改为数据2了,让其他线程重新拿新的数据(数据2)。

1.2 不保证原子性:线程1从主内存中拿了一个值为1的数据到自己的工作空间里面进行加1的操作,值变为2,写回主内存,然后还没有来得及通知其他线程,线程1就被线程2抢占了,CPU分配,线程1被挂起,线程2还是拿着原来主内存中的数据值为1进行加1,值变成2,写回主内存,将主内存值为2的替换成2,这时线程1的通知到了,线程2重新去主内存拿值为2的数据。

1.3禁止指令重排:首先指令重排是程序执行的时候不总是从上往下执行的,就像高考答题,可以先做容易的题目再做难的,这时做题的顺序就不是从上往下了。禁止指令重排就杜绝了这种情况。

        (一般面试官开始问你会从java基础问起,一问大多数会问到集合这一块,而集合问的较多的是HashMap,这个时候你就可以往这些方向带着面试官问你,而且扩展的深度也够,所以上面的干货够你说个十来分钟吧,第一个问题拿下后,面试官心里至少简单你的基础够扎实,第一印象分就留下了)

Spring的AOP和IOC是什么?使用场景有哪些?Spring事务与数据库事务,传播行为,数据库隔离级别

2.AOP:面向切面编程。

即在一个功能模块中新增其他功能,比方说你要下楼取个快递,你同事对你说帮我也取一下呗,你就顺道取了。在工作中如果系统中有些包和类中没有使用AOP,例如日志,事务和异常

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值