工作三年!全靠大佬的Java笔记,年底跳槽阿里涨了10K
前言
不论是校招还是社招都避免不了各种⾯试、笔试,如何去准备这些东⻄就显得格外重要,之前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、等技术真题资料,需要领取的小伙伴可以关注公众号:麒麟改bug 领取,在这里小编祝福想去大厂面试的同学,旗开得胜,offer拿到手抽筋。
工作三年!全靠大佬的Java笔记,年底跳槽阿里涨了10K的更多相关文章
- 腾讯工作近十年大佬:不是我打击你!你可能真的不会写Java
文章核心 其实,本不想把标题写的那么恐怖,只是发现很多人干了几年 Java 以后,都自认为是一个不错的 Java 程序员了,可以拿着上万的工资都处宣扬自己了,写这篇文章的目的并不是嘲讽和我一样做 Ja ...
- [MarsZ]程序猿谈大学之工作三年半的程序猿给大学童鞋的一些注释
我本不是个喜欢写文章的人,更甭提写这种基本没技术含量的文章了.但是今天上班的时候,不经意浏览了下学校的QQ群,突然很想把自己的经验经历分享给还在大学里的同学,希望能让某些对前途职业迷茫的童鞋有所帮助. ...
- java笔记整理
Java 笔记整理 包含内容 Unix Java 基础, 数据库(Oracle jdbc Hibernate pl/sql), web, JSP, Struts, Ajax Spring, E ...
- 转 Java笔记:Java内存模型
Java笔记:Java内存模型 2014.04.09 | Comments 1. 基本概念 <深入理解Java内存模型>详细讲解了java的内存模型,这里对其中的一些基本概念做个简单的笔记 ...
- Effective Java笔记一 创建和销毁对象
Effective Java笔记一 创建和销毁对象 第1条 考虑用静态工厂方法代替构造器 第2条 遇到多个构造器参数时要考虑用构建器 第3条 用私有构造器或者枚举类型强化Singleton属性 第4条 ...
- Java 笔记 —— java 和 javac
Java 笔记 -- java 和 javac h2{ color: #4ABCDE; } a{ text-decoration: none !important; } a:hover{ color: ...
- 这是一套Java菜鸟到大牛的学习路线之高级教程,由工作了10年的资深Java架构师整理。
这是一套Java菜鸟到大牛的学习路线之高级教程,由工作了10年的资深Java架构师整理. 01-java高级架构师设计-基础深入 J2SE深入讲解 Java多 ...
- Johnson 全源最短路径算法学习笔记
Johnson 全源最短路径算法学习笔记 如果你希望得到带互动的极简文字体验,请点这里 我们来学习johnson Johnson 算法是一种在边加权有向图中找到所有顶点对之间最短路径的方法.它允许一些 ...
- java笔记00-目录
--2013年7月26日17:49:59 学习java已久,趁最近有空,写一个总结: java笔记01-反射:
随机推荐
- 重新认识C++的"cin >>"、"cout <<" 简简单单 - 快快乐乐
重新认识C++的"cin >>"."cout <<" 简简单单 - 快快乐乐 JERRY_Z. ~ 2020 / 11 / 24 转载请 ...
- 企业级工作流解决方案(七)--微服务Tcp消息传输模型之消息编解码
Tcp消息传输主要参照surging来做的,做了部分裁剪和改动,详细参见:https://github.com/dotnetcore/surging Json-rpc没有定义消息如何传输,因此,Jso ...
- 标准库之time,random,sys,os
# import time # print(time.time()) # 时间戳 # print(time.mktime(time.localtime())) # 结构化时间转换为时间戳 # prin ...
- web自动化测试难点 滚动条操作、日期框处理、上传文件
如何把页面滑到最低部? 一般来说,做web自动化测试时,不需要单独写代码,把页面滑到可见,因为click操作,只要是元素存在并且加载出来了,就可以点击到,无需另外写滑动元素的代码. 如果特殊情况需要滑 ...
- idea 安装教程
臭臭是猪臭臭是猪臭臭是猪臭臭是猪臭臭是猪臭臭是猪臭臭是猪臭臭是猪臭臭是猪臭臭是臭臭是猪臭臭是猪臭臭是猪臭臭是猪臭臭是猪臭臭是猪臭臭是猪臭臭是猪臭臭是猪臭臭是猪臭臭是猪臭臭是猪臭臭是猪臭臭是猪臭臭是猪臭 ...
- C++分支结构,求一元二次方程的根
总时间限制: 1000ms 内存限制: 65536kB 描述 利用公式x1 = (-b + sqrt(b*b-4*a*c))/(2*a), x2 = (-b - sqrt(b*b-4*a*c))/ ...
- java类,函数传参
1 package 传参练习; 2 //学生姓名组成的数组:指定区间和查找的名字返回此人是否存在(如果存在返回位置否则-1) 3 public class test1 { 4 public stati ...
- Hybrid接口应用
简介:VLAN10内通信,VLAN20内通信,VLAN30与VLAN10.VLAN20.VLAN30皆可通信 Hybrid接口应用拓扑图: 一.配置PC机 ip 并测试相互能否ping通 PC名称 I ...
- vue中,模拟锚点定位,实现滚动动画效果
平时我们利用锚点进行页面内的快速瞬移,画面跳转生硬,观感很差. 在VUE中,如何快速的实现锚点效果,并且还让它拥有滚动的动画效果呢. 其实两行代码就能解决问题 1 <a @click=" ...
- NDK&JNI开发总结
NDK&JNI开发总结 简介 附个不错的博客 https://www.jianshu.com/p/87ce6f565d37 在Android Framework中,需要提供一种媒介或 桥梁,将 ...