基础部分
- 抽象类和接口的区别
- Java中接口可不可以继承一般类,为什么?
- 基本数据类型的默认值?基本数据类型所占的字节
- String属于那个类,以及常用的方法
- 熟悉的网络协议
- String、StringBuffer、StringBuilder
- 设计模式
- 高并发如何处理?
- get与post的区别
- JDK1.8新特性
集合部分
- List、Map、Set三个接口,存取元素时,各有什么特点
- ArrayList和LinkedList的底层实现原理?他们为什么线程不安全?在多线程并发操作下,我们应该用什么替代?
- HashMap和HashTable有什么区别?其底层实现是什么?CurrentHashMap的锁机制又是如何?如果想将一个Map变为有序的,该如何实现?
框架部分
- 什么是Spring
- spring优点
- 什么是IOC?什么是AOP?
- 反射机制:
- 动态代理:
- 什么是DI机制?
- Spring的Ioc注入方式有几种?
- hibernate的工作原理
- hibernate优点:
- SpringMvc运行流程
- ssh和是ssm的区别
- struts2和SpringMvc的区别?
- hibernate和Mybatis的区别?
- Mybatis缓存机制?
Web部分
JSP九大内置对象?作用分别是什么?分别有什么方法
forward()与redirect()的区别?
线程部分
1. 程序,进程,线程这三者之间的关系?
2.单线程与多线程区别,以及多线程意义?
3.理解并发与并行
4.如何创建线程
5.线程的几种状态?
6.多线程解决方法
7.什么是死锁(deadlock)?
数据库
你所了解的数据库优化方面有哪些?
事务的四大特征
Spring隔离级别
Spring怎么设置隔离级别?
Redis
设置缓存值的过期时间?
Redis三种过期策略
总结:
针对于上面的面试题我总结出了互联网公司java程序员面试涉及到的绝大部分面试题及答案做成了文档和架构视频资料免费分享给大家(包括Dubbo、Redis、Netty、zookeeper、Spring cloud、分布式、高并发等架构技术资料),希望能帮助到您面试前的复习且找到一个好的工作,也节省大家在网上搜索资料的时间来学习,也可以关注我以后会有更多干货分享。