2016美团面试经历

这是一个雾霾的下午,我来到了美团的办公楼,开始了面试,不知怎么的,来之前,底气有些不足
面的越多,就会越知道自己的不足吧。
事实证明,美团的面试确实不简单,要比百度的更加详细一些,非常的具体,每个问题基本都是技术的更进一步,怎么理解呢?
基本上就是日常工作中多问几个为什么,还真的需要积累

美团的面试只有一轮,在我这里(以下问题不根据时间排序)

java方面

  1. java中的引用有几种?

    1. 强引用,正常创建的new的对象,这些对象一旦被创建,不会被垃圾回收线程销毁
    2. 软引用,如果内存空间够,那么不会被回收,如果空间不够,那么会被回收
    3. 弱引用,下一次垃圾回收肯定会被回收
    4. 虚引用,和回收队列联合使用
    5. final引用
  2. Java中的threadlocal是怎么用的? threadlocal中的内部实现是怎么样的? 哪种引用?

  3. java中的”final”关键字在多线程的语义中,有什么含义
  4. 说说nio的架构,为什么变快了,说说select和buffer都是怎么用的?
  5. 在操作系统中的实现原理? 如果都是cpu轮训话,会不会对cpu影响太大?
  6. 应用到了linux中的什么特性?
  7. nio中, 如果不显式的调用 system.gc() 那会出现什么问题?
  8. jvm的垃圾回收分为哪些种类?每一种都是怎么去实现的?讲述一下G1的回收策略?
    7.
    jvm中的参数分为哪些种类,都是做什么的?jvm的监控怎么做?实际项目上线以后的监控怎么做?
  9. JVM中,如果把堆内存参数配置的超过了本地内存,会怎么样?
  10. JVM中的内存结构分为哪些方面?
  11. 栈空间是怎么样的?每个线程只有一个栈吗?
  12. 栈空间的内部结构是怎么样的?
  13. 堆内存为什么要设计为分代?
  14. ArrayList的实现原理,如何测试ArrayList动态分配内存中带来的内存、cpu变化
  15. ArrayList是不是线程安全的? 怎么实现线程安全的?
  16. synchronizedlock有什么区别?
  17. volatile的作用,如果volatile修饰的对象经过了大量的写,会出现什么问题?
  18. String的+和StringBuilder有什么区别? 放在循环中有什么问题?
  19. 日志打印的过程中,使用String的+操作和使用占位符输出,对性能上有什么区别
  20. SimpleDateFormat如果是一个全局变量的话,有什么问题?
  21. HashMap的操作中,直接使用keySet()遍历有什么问题?
  22. Random中,种子一样的话,就一定会生成一样的随机数吗?
  23. spring的aop是怎么实现的?除了字节码扩展以外,还有其他实现机制吗?
  24. 类加载器的概念,简述一个类加载器的加载过程
  25. 简述一个类的加载过程

计算机结构方面

  1. linux中awk命令的使用?
  2. nginx是多线程还是单线程?
  3. linux中如何监控和查看内存、cpu情况?
  4. 负载分为哪些类别和层次?你们项目中是怎么用的?
  5. mq是如何使用的?
  6. http协议建立连接的过程是怎么样的?
  7. https建立连接的的过程是怎么样的?
  8. forward和redirect有什么区别?
    5.
    linux如何实现nginx的高性能?有什么特性被应用了?直接来说,就是基于linux的网络编程
  9. redis中,是如何进行

数据库方面

  1. 数据流的锁级别,乐观锁和悲观锁的概念,是不是只有悲观锁?
  2. 数据库如何实现事务?
  3. 有没有什么研究深入的技术,或者比较满意的项目?

发表评论

电子邮件地址不会被公开。 必填项已用*标注