美团一面:
1.自我介绍
2.为什么报移动端开发
3.java的同步机制是怎么样的
4.Synchronized的底层实现原理
5.synchronized能解决什么问题?
6.Volatile可以解决什么问题
7.Synchronized的优化效果体现在哪里?
8.死锁的必要条件是什么
9.代码:生产者消费者的实现
10.wait()和sleep()的区别
11.join是线程类方法还是Object类方法
12.代码:平衡二叉树
13.上述写出来的代码的时空复杂度
14.我用的还是自底向上的方式求二叉树,那自顶向下怎么求
15.最后,面试官说留着我课后看看(当时没答上来),还叫我多注意代码格式的部分。
16.反问

面试官边问边教学,我觉得非常nice

美团二面:
1.自我介绍
2.为什么选择移动端开发(两个面试官都问了这个问题。。。很重要么)
3.当初跟移动端开发相关项目有哪些,展开讲述遇到的问题,收获等等
4.java的特性
5.多态具体含义
6.封装的含义、通常在语言上的几种表现形式及其具体区别
7.进程和线程的区别
8.进程的通信机制
9.多个线程之间并发执行在单核cpu内是逻辑上的还是实际上的
10.死锁的含义、必要条件、解决方法
11.应用程序在访问内存的时候是直接访问物理地址么?
12.操作系统虚拟内存的实现机制、调用内存的方法。
13.近期项目的原理和方法讲述,让面试官听懂。
14.代码:实现双向链表两个节点的位置交换。
15.反问

面试官都是很好的。