面试前总结(二)

知识点梳理

一、   JAVA(SE)基础:

  1. 概念– 面向对象,继承,多态,接口,基础类型
  2. String、StringBuffer、StringBuilder– 区别,源代码,常用方法、使用
  3. 容器– 类图结构,源代码?相互之间区别,底层实现,使用场景
  4. 线程–创建线程的方式,生存周期,主要方法,线程池?
  5. 并发– ConCurrent源代码、使用,synchronized使用,volatile使用
  6. IO– 类图结构、基本io操作(代码编写),BIO、NIO、AIO区别?
  7. 异常– 类图结构,try-catch-finally、throw使用,常见异常?
  8. 反射、注解– 原理,代码,使用场景
  9. 序列化– 原理,作用,实现
  10. 网络编程(socket)– 基本代码实现,中间件?
  11. 内存管理– 内存分布,对象创建、分布、访问,OutOfMemoryError、StackOverFlowError
  12. GC– 可达性分析,垃圾回收算法(Mark-Sweep、Coping、Mark-Compact、Generational),安全点/区域,常见垃圾收集器,垃圾回收过程,回收策略
  13. 类– 类文件结构、类加载过程,类加载器,加载策略
  14. 内存模型– 内存交互,volatile变量,先行发生原则
  15. 线程– 线程安全,锁优化
  16. Servlet和jsp– 生命周期,内置对象,Filter,Listener
  17. Tomcat– 底层机制,处理请求过程
  18. Struts2– 核心、工作流程,模型驱动,Action基本实现,与spring-mvc比较
  19. Hibernate– 工作流程,一级、二级缓存,优化,对象状态(瞬态,持久,托管),Session工厂,与Mybatis比较
  20. Spring– 核心概念(IOC,AOP),工作流程,注入方式、对比,Spring容器,Bean的作用域(5),AOP的实现(jdk动态代理,cglib)
  21. 大型网站架构– LVS,缓存,Nosql(Redis),分布式,集群,应用分离,数据库分离
  22. LVS– 调度算法(加权轮询WRR,加权最少连接WLC等),实现方式(DR、TUN、NAT)
  23. Memcached– 通信协议,内存分配(类似伙伴系统),内存替换算法(LRU),分布式算法(一致性哈希算法)
  24. 设计模式Design pattern
  25. 排序算法– 基本思想,时间复杂度,空间复杂度,稳定性
  26. 数据结构– 链表,栈,队列,各种树结构(二叉树,二叉排序树,平衡二叉树AVL,红黑树,B-TREE,B+TREE),增删操作?使用场景?
  27. 数据库理论和概念– 三级数据模式结构,二级印象技术
  28. 关系数据库– 三要素(结构、操作、完整性约束),关系代数(集合运算4,关系运算4),SQL(DDL,DML,DCL),规范化理论
  29. 事务和并发控制– 特性ACID,不一致问题(丢失修改,不可重复读,脏读),S/X锁,三级封锁协议,两段锁协议,意向锁
  30. MySQL(InnoDB)技术内幕– 存储引擎比较(MyIsAM,NDB),后台线程,内存,Checkpoint,关键特性(插入缓存,两次写,自适应哈希索引,异步IO),索引组织表结构(B+TREE),索引底层优化(覆盖索引,MRR,ICP等),全文检索(倒排索引),行级锁,一致性(非)锁定读与MVCC,行锁算法(Record Lock,Gap Lock,Next-Key Lock)
  31. 概念– 五层协议(物理层,数据链路层,网络层,运输层,应用层)
  32. 网络层– IP地址,MAC地址,ARP协议,划分子网,路由
  33. 运输层– UDP概念,TCP连接建立和释放,TCP流量控制(滑动窗口),TCP拥塞控制(慢开始,拥塞避免,快重传,快恢复)
  34. 应用层—DNS,HTPP协议
  35. 进程管理– 进程控制和状态,进程同步(信号量),同步问题(生产者消费者问题,哲学家进餐,读者写者问题),进程通信,线程,进程和线程的区别
  36. 处理机调度– 调度算法,死锁的必要条件,银行家算法
  37. 存储器管理– 分配方式,地址转换原理,基本分页(段)存储管理,页面置换算法

二、   JVM:

  1. 内存管理– 内存分布,对象创建、分布、访问,OutOfMemoryError、StackOverFlowError
  2. GC– 可达性分析,垃圾回收算法(Mark-Sweep、Coping、Mark-Compact、Generational),安全点/区域,常见垃圾收集器,垃圾回收过程,回收策略
  3. 类– 类文件结构、类加载过程,类加载器,加载策略
  4. 内存模型– 内存交互,volatile变量,先行发生原则
  5. 线程– 线程安全,锁优化

三、   JAVA(EE):

  1. Servlet和jsp– 生命周期,内置对象,Filter,Listener
  2. Tomcat– 底层机制,处理请求过程
  3. Struts2– 核心、工作流程,模型驱动,Action基本实现,与spring-mvc比较
  4. Hibernate– 工作流程,一级、二级缓存,优化,对象状态(瞬态,持久,托管),Session工厂,与Mybatis比较
  5. Spring– 核心概念(IOC,AOP),工作流程,注入方式、对比,Spring容器,Bean的作用域(5),AOP的实现(jdk动态代理,cglib)
  6. 大型网站架构– LVS,缓存,Nosql(Redis),分布式,集群,应用分离,数据库分离
  7. LVS– 调度算法(加权轮询WRR,加权最少连接WLC等),实现方式(DR、TUN、NAT)
  8. Memcached– 通信协议,内存分配(类似伙伴系统),内存替换算法(LRU),分布式算法(一致性哈希算法)
  9. 设计模式Design pattern

四、   数据结构与算法:

  1. 排序算法– 基本思想,时间复杂度,空间复杂度,稳定性
  2. 数据结构– 链表,栈,队列,各种树结构(二叉树,二叉排序树,平衡二叉树AVL,红黑树,B-TREE,B+TREE),增删操作?使用场景?

五、   数据库:

  1. 数据库理论和概念– 三级数据模式结构,二级印象技术
  2. 关系数据库– 三要素(结构、操作、完整性约束),关系代数(集合运算4,关系运算4),SQL(DDL,DML,DCL),规范化理论
  3. 事务和并发控制– 特性ACID,不一致问题(丢失修改,不可重复读,脏读),S/X锁,三级封锁协议,两段锁协议,意向锁
  4. MySQL(InnoDB)技术内幕– 存储引擎比较(MyIsAM,NDB),后台线程,内存,Checkpoint,关键特性(插入缓存,两次写,自适应哈希索引,异步IO),索引组织表结构(B+TREE),索引底层优化(覆盖索引,MRR,ICP等),全文检索(倒排索引),行级锁,一致性(非)锁定读与MVCC,行锁算法(Record Lock,Gap Lock,Next-Key Lock)

六、   计算机网络:

  1. 概念– 五层协议(物理层,数据链路层,网络层,运输层,应用层)
  2. 网络层– IP地址,MAC地址,ARP协议,划分子网,路由
  3. 运输层– UDP概念,TCP连接建立和释放,TCP流量控制(滑动窗口),TCP拥塞控制(慢开始,拥塞避免,快重传,快恢复)
  4. 应用层—DNS,HTPP协议

七、   计算机操作系统

  1. 进程管理– 进程控制和状态,进程同步(信号量),同步问题(生产者消费者问题,哲学家进餐,读者写者问题),进程通信,线程,进程和线程的区别
  2. 处理机调度– 调度算法,死锁的必要条件,银行家算法
  3. 存储器管理– 分配方式,地址转换原理,基本分页(段)存储管理,页面置换算法

 

    原文作者:苍穹冰尘
    原文地址: https://www.cnblogs.com/cangqiongbingchen/p/4528723.html
    本文转自网络文章,转载此文章仅为分享知识,如有侵权,请联系博主进行删除。
点赞