1-3年Java面试大纲

1-3年Java面试大纲

      • 1 Java 基础
        • 1.1 Java 基础语法
        • 1.2 Java 常用集合
        • 1.3 Java IO 和 NIO
      • 2 多线程
        • 2.1 线程的基本概念
        • 2.2 线程池
        • 2.3 锁
      • 3 数据库
      • 4 算法
      • 5 框架
      • 6 网络

此文的目的是为了督促自己去学习,让自己有更明确的方向去提升自己。已面试要点为大纲,我觉得比抓住什么看什么要更有目的,更能坚持下去。世界瞬息万变,我们要时刻准备着、时刻提高着自己,才能使自己更具有竞争力。

1 Java 基础

1.1 Java 基础语法

  • 面向对象的特征
  • java 中四种修饰符的限制范围
  • 重载和重写的区别
  • 抽象类和接口有什么区别
  • Java 基本数据类型
  • int 和 Integer 有什么区别
  • 说说&和&&的区别
  • final, finally, finalize 的区别
  • Object 类中的方法
  • equals 与 == 的区别

1.2 Java 常用集合

  • List 和 Set 区别
  • List 和 Map 区别
  • Arraylist 与 LinkedList 区别
  • ArrayList 与 Vector 区别
  • ArrayList在循环过程中删除,会不会出问题
  • HashMap 和 Hashtable 的区别
  • HashSet 和 HashMap 区别
  • HashMap 的源码,实现原理
  • HaspMap 扩容是怎样的,为什么都是2的N次幂的大小
  • HashMap,HashTable,ConcurrentHashMap 的区别

1.3 Java IO 和 NIO

  • 什么是比特(Bit),什么是字节(Byte),什么是字符(Char),它们长度是多少,各有什么区别
  • java 中有几种类型的流
  • 字符流和字节流有什么区别
  • 什么是 java 序列化,如何实现 java 序列化?
  • IO 和 NIO 区别
  • ByteBuffer 与 StringBuffer 有什么区别
  • 内存映射缓存区是什么
  • 直接缓冲区与非直接缓冲器有什么区别
  • 原生的 NIO 在 JDK 1.7 版本存在 epoll bug

2 多线程

2.1 线程的基本概念

  • 线程和进程的区别
  • 创建线程的方式有哪几种
  • Callable 和 Future 的了解
  • 线程的生命周期
  • ThreadLocal 原理分析
  • sleep 和 wait 的区别
  • notify 和 notifyAll 的区别
  • sleep() 、join()、yield()有什么区别

2.2 线程池

  • 为什么使用线程池
  • 线程池的几种实现方式
  • 线程池的实现原理
  • 线程池的停止方法

2.3 锁

  • synchronized 关键字的用法,优缺点
  • synchronized 与 lock 的区别
  • volitile 关键字的作用,原理
  • CAS 概念及理解
  • 悲观锁和乐观锁
  • 可重入锁的用处及实现原理

3 数据库

  • 数据库锁、行锁
  • 事物的性质
  • MySQL 索引使用的注意事项
  • 数据库索引的原理
  • MySQL 数据库的常用存储引擎

4 算法

  • 排序算法
  • B+树
  • 红黑树

5 框架

  • BeanFactory 和 ApplicationContext 有什么区别
  • Spring Bean 的生命周期
  • Spring 的单例实现原理
  • Spring IOC 如何实现
  • 说说 Spring AOP
  • Spring AOP 实现原理
  • 动态代理(cglib 与 JDK)
  • Spring 框架中用到了哪些设计模式
  • MVC 设计思想
  • Spring MVC 运行流程
  • SpringMVC 的Controller 是如何处理参数的

6 网络

  • 计算机网络的模型
  • TCP,UDP 区别
  • 三次握手,四次挥手,为什么要四次挥手
  • 长连接和短连接
  • 连接池适合长连接还是短连接
  • https 原理

PS:这是本人之前面试过程中遇到的较多的以及不太懂的问题、本人觉得比较重要的。也参考了一些网上别人的面试问题,欢迎大家补充。
后续会针对这些知识点,详细写一写学习的总结,欢迎关注与指正。

1-3年Java面试大纲_第1张图片

你可能感兴趣的:(面试,Java面试总结)