【网传】阿里Java架构师面试题+答案

一、Java基础和高级

  1. String类为什么是final的?
    答案

  2. HashMap的源码,实现原理、底层结构
    答案

  3. 反射中,Class.forName和classloader的区别?
    答案

  4. session和cookie的区别和联系,session的生命周期,多个服务部署时session管理。
    session与cookie
    session生命周期

  5. Java中的队列都有哪些,有什么区别。
    Queue
    JDK Queue
    JDK Queue基本特性比较

  6. Java的内存模型以及GC算法
    Java8内存模型
    【面试】你了解JVM内存模型吗?
    再有人问你Java内存模型是什么,就把这篇文章发给他
    垃圾回收
    垃圾收集器和垃圾收集算法

  7. Java8的新特性
    Java8新特性【终极版】

  8. Java数组和链表两种结构的操作效率,在哪些情况下(从开头开始,从结尾开始,从中间开始),哪些操作(插入,查找,删除)的效率高?
    Java数组和链表

  9. Java内存泄露的问题调查定位:jmap,jstack的使用等等。
    排查 Java 的内存问题
    Java内存泄漏分析和解决
    记一次JVM堆外内存泄露Bug的查找

二、spring框架

  1. spring框架中需要引用哪些jar包,以及这些jar包的用途
  2. srpingMVC的原理
  3. springMVC注解的意思
  4. spring中beanFactory和ApplicationContext的联系和区别
  5. spring注入的几种方式
  6. spring如何实现事物管理的
  7. springIOC和AOP的原理
  8. spring中循环注入的方式
  9. Spring AOP与IOC的实现原理
  10. Spring的beanFactory和factoryBean的区别
  11. Spring的事务隔离级别,实现原理
  12. 对Spring的理解,非单例注入的原理?它的生命周期?循环注入的原理,aop的实现原理,说说aop中的几个术语,它们是怎么相互工作的?
  13. spring boot特性,优势,适用场景等

三、java多线程常见问题

  1. Java创建线程之后,直接调用start()方法和run()的区别?

  2. 常用的线程池模式以及不同线程池的使用场景

  3. newFixedThreadPool此种线程池如果线程数达到最大值后会怎么办,底层原理。

  4. 多线程之间通信的同步问题,synchronized锁的是对象,衍伸出和synchronized相关很多的具体问题,例如同一个类不同方法都有synchronized锁,一个对象是否可以同时访问。或者一个类的static构造方法加上synchronized之后的锁的影响。

  5. 可重入锁的含义,以及ReentrantLock 和synchronized的区别?

  6. 同步的数据结构,例如concurrentHashMap的源码理解以及内部实现原理,为什么他是同步的且效率高

  7. atomicinteger和volatile等线程安全操作的关键字的理解和使用

  8. 线程间通信,wait和notify

你可能感兴趣的:(【网传】阿里Java架构师面试题+答案)