- 3
- 0
- 约4.56千字
- 约 13页
- 2026-06-28 发布于福建
- 举报
第PAGE页共NUMPAGES页
2026年移动应用开发工程师面试题集:从基础到高级
一、编程语言与基础概念(共5题,每题10分,总分50分)
1.题目:解释Java中的`volatile`关键字的作用,并说明它与`synchronized`的区别。
答案:
`volatile`关键字用于确保变量的可见性和有序性,但不保证原子性。
-可见性:当一个线程修改了`volatile`变量时,其他线程能够立即看到这个修改。
-有序性:禁止指令重排,保证代码执行顺序与程序顺序一致。
-不保证原子性:如果需要原子性(如自增),需结合`synchronized`或`Atomic`类。
`synchronized`与`volatile`的区别:
-`volatile`:轻量级锁,只影响变量的可见性和有序性,适用于单变量操作。
-`synchronized`:重量级锁,保证原子性、可见性和有序性,适用于复合操作(如CAS)。
解析:
`volatile`适用于低并发场景,`synchronized`适用于高并发场景。面试官会考察对并发控制的深入理解。
2.题目:什么是JSONP?它有什么优缺点?
答案:
JSONP(JSONwithPadding)是一种绕过同源策略的跨域数据请求技术。通过动态创建`script`标签,将JSON数据嵌入JavaScript代码中返
原创力文档

文档评论(0)