前言
不论是校招还是社招都避免不了各种⾯试、笔试,如何去准备这些东⻄就显得格外重要,之前8月底阿里的人事部门打电话叫我要不要面试,当时正处于换工作的期间,于是就把简历发给阿里hr。
人事审核后经过一些列面试、机试,最终顺利拿到了offer,出于未来职业规划的考量,本人手里还有其他的一些offer,还没有定下来,顺便在此分享一下我面试阿里的一些经验以及面试题总结的分享!
一、多线程
多线程有什么用?
线程和进程的区别是什么?
一个线程的生命周期有哪几种状态?它们之间如何流转的?
多线程同步有哪几种方法?
线程怎样拿到返回结果?
线程 yield()方法有什么用?
什么是 CAS 算法?在多线程中有哪些应用。
ThreadLocal 是什么?有什么应用场景?
为什么你应该在循环中检查等待条件?
提交任务时线程池队列已满会时发会生什么?
Java 中 notify 和 notifyAll 有什么区别?
Java 中堆和栈有什么不同?
你如何在 Java 中获取线程堆栈?
二、MySQL
MySQL中有哪几种锁?
简述在MySQL数据库中MyISAM和InnoDB的区别
CHAR和VARCHAR的区别?
如果一个表有一列定义为TIMESTAMP,将发生什么?
BLOB和TEXT有什么区别?
NOW()和CURRENT_DATE()有什么区别?
MySQL里记录货币用什么字段类型好
MySQL数据库作发布系统的存储,一天五万条以上的增量, 预计运维三年,怎么优化?
索引的底层实现原理和优化
实践中如何优化MySQL
简单描述MySQL中,索引,主键,唯一索引,联合索引
SQL注入漏洞产生的原因?如何防止?
为表中得字段选择合适得数据类型
对于关系型数据库而言,索引是相当重要的概念,请回答
SQL语言包括哪几部分?每部分都有哪些操作关键字?
完整性约束包括哪些?
三、Java虚拟机
我们开发人员编写的Java代码是怎么让电脑认识的
为什么说java是跨平台语言
Jdk和Jre和JVM的区别
说一下 JVM由那些部分组成,运行流程是什么
详细的介绍下程序计数器?(重点理解)
详细介绍下Java虚拟机栈?(重点理解)
你能给我详细的介绍Java堆吗?(重点理解)
能不能解释一下方法区(重点理解)
什么是JVM字节码执行引擎
你听过直接内存吗?
堆栈的区别是什么?
Java会存在内存泄漏吗?请说明为什么?
简述Java垃圾回收机制
GC是什么?为什么要GC
垃圾回收器的原理是什么?有什么办法手动进行垃圾回收?
怎么判断对象是否可以被回收?
对象什么时候可以被垃圾器回收
讲一下新生代、老年代、永久代的区别
为什么新生代要分Eden和两个 Survivor 区域?
什么是垃圾回收器他和垃圾算法有什么区别
新生代垃圾回收器和老年代垃圾回收器都有哪些?有什么区别?
简述java内存分配与回收策率以及Minor GC和Major GC
四、Java基础
什么是Java
jdk1.5之后的三大版本
Jdk和Jre和JVM的区别
Java语言有哪些特点
什么是字节码?采用字节码的最大好处是什么
Java应用程序与小程序之间有那些差别?
Java和C++的区别
基础语法
Java有哪些数据类型
用最有效率的方法计算2乘以8
Math.round(11.5)等于多少?Math.round(-11.5)等于多少
short s1 = 1; s1 = s1 + 1;有错吗?short s1 = 1; s1 += 1;有错吗
访问修饰符public,private,protected,以及不写(默认)时的区别
关键字
&和&&的区别
Java有没有goto
fifinal fifinally fifinalize区别
this关键字的用法
super关键字的用法
static存在的主要意义
static应用场景
在Java中,如何跳出当前的多重嵌套循环
面向对象
面向对象和面向过程的区别
面向对象的特征有哪些方面
什么是多态机制?Java语言是如何实现多态的?
面向对象五大基本原则是什么(可选)
普通类和抽象类有哪些区别?
创建一个对象用什么关键字?对象实例与对象引用有何不同?
成员变量与局部变量的区别有哪些
在Java中定义一个不做事且没有参数的构造方法的作用
一个类的构造方法的作用是什么?若一个类没有声明构造方法,改程序能正确执行吗?为什么?
静态方法和实例方法有何不同?
什么是方法的返回值?返回值的作用是什么?
五、Java核心知识点整理
JVM
JAVA集合
Java多线程并发
Java基础
spring原理
微服务
Netty 与 RPC
网络
日志
Zookeeper
Kafka
RabbitMQ
Hbase
MongoDB
Cassandra
设计模式
负载均衡
数据库
一致性算法
Java算法
数据结构
加密算法
分布式缓存
Hadoop
Spark
Storm
YARN
机器学习
云计算
六、mybatis源码分析
mybatis入门
mybatis是什么?
为什么要使用mybatis
如何使用mybatis
配置文件解析过程
映射文件解析过程
mapper接口绑定过程分析
出来为完成解析的节点
SQL持续流程
SQL执行入口
执行代理逻辑
查询语句的执行流程
selectOne方法分析
-
{}占位符的解析与参数的设置过程梳理
更新语句的执行过程
更新语句执行过程全貌
内置数据源初始化过程
PooledDataSource
缓存类介绍
一级缓存
二级缓存
插件机制
插件机制原理
植入插件逻辑
实现一个分页插件
文章到这里就结束了!
2020马上就要过去了,上面的面试题及答案小编以及整理成文档 ,还有一些微服务、SSM、 Redis、等技术真题资料。
需要领取的小伙伴可以 私信 【面试题】免费领取哦,在这里小编祝福想去大厂面试的同学,旗开得胜,offer拿到手抽筋。