阿里面试题大汇总

零、jvm

  1. JVM启动流程
  2. JVM加载过程
  3. JAVA内存模型
  4. jvm参数
  5. gc参数
  6. JVM垃圾回收
  7. GC算法?
  8. 内存泄漏如何检测 

一、JAVASE:(6.5)

  1. hashCode与equals的区别联系。
  2. 自动拆装箱
  3. Object类方法
  4. 索引的实现机制(B+树),优缺点
  5. 聚簇索引和非聚簇索引(出现次数少)
  6. error/exception/runtime exception区别
  7. jdk1.5 
  8. jdk1.6
  9. jdk1.7
  10. jdk1.8
  11. jdk1.9
  12. jdk1.10

二、集合:(6.8)

  1. concurrenthashmap  详细介绍
  2. HashMap实现原理   详细介绍
  3. HashMap,put和get同时操作
  4. treemap实现 TreeMap实现原理 红黑树
  5. JDK1.8 HashMap改动(引入红黑树)    重新认识JDK1.8 中不一样的HashMap
  6. List和set区别    java 常用集合list与Set、Map区别及适用场景总结
  7. linklist和arraylist区别,应用场景     Vector,ArrayList,LinkedList的区别与适用场景
  8. Arraylist的原理

三、线程:(6.10)

  1. 1. JAVA多线程实现

    2. JAVA线程和进程区别

    3. 线程有几种状态,怎么互相转化

    4. 启动线程方式

    5. 线程同步,并发操作怎么控制

    6. lock和synchronized,

    7. 线程池有几种,干什么用。

    8. 线程池的使用时的注意事项

四、框架:(6.13)

  1. 对Spring的理解,项目中都用什么?
  2. Spring中autowire和resourse关键字的区别
  3. SpringMVC和Struts比较,为什么要用spring有什么优点
  4. Spring MVC底层实现
  5. Spring IOC Spring AOP是干嘛的
  6. 事务的ACID
  7. 事务隔离级别
  8. 序列化级别有什么优缺点  

五、数据结构:(6.12)

  1. 数组和链表在内存中表型形式
  2. 常见的排序算法它的时间复杂度和空间复杂度?
  3. 堆排序的具体实现?
  4. 平衡二叉树

六、计算机网络:(6.14)

  1.  HTTP状态吗
  2.  http缓存
  3.  http 302 https具体数据传输流程
  4.  HTTP/HTTPS过程
  5.  http升级为https需要哪些操作
  6.  http 2 了解过吗
  7.   OSI 7层模型
  8.  TCP三次握手
  9.  TCP连接断开过程,为什么要三次握手
  10.  TCP和UDP的区别?
  11.  TCP保证可靠性,
  12.  DNS解析
  13.  超时重传
  14.  拥塞控制,
  15.  滑动窗口协议

七、设计模式:(6.15)

  1. 抽象工厂和工厂方法模式的区别
  2. 工厂模式的思想

八、数据库:(6.20)

  1. 项目
  2. 自我介绍
  3. 还有什么问题?我就问了我哪些地方还需要学习!
  4. Redis的持久化?
  5. 数据库:隔离级别
  6. 四大特性
  7. linux查看日志文件

十、javaWeb

  1. sendRedirect, foward区别
  2. Post和get区别
  3. Session,Cookie区别


原文地址:https://www.cnblogs.com/excellencesy/p/9127746.html