【Java开发】春招上岸经验分享
一、个人情况
专业:控制科学与工程
求职岗位:Java后端开发工程师
二、投递方式
三、如何准备
四、知识点总结
这里分享下我之前总结的面试题,希望对大家有帮助:
Java基础
1.面向对象的三大特性
2.jvm如何实现多态
3.String,StringBuffer和StringBuilder的区别
4.Hashcode一般使用31作为乘积的原因
5.浅拷贝深拷贝区别
6.forName和classloader区别
7.jvm内存模型
8.gc算法,垃圾收集器有哪些
9.类加载机制
10.双亲委派机制,如何打破
11.volatile的作用
12.HashMap底层原理
13.线程安全的集合有哪些
14.synchronized和lock的区别
15.可重入锁和非可重入锁的区别
16.线程池的七个参数
17.sleep和wait的区别
18.synchronized锁膨胀过程
19.HashMap和HashTable的区别
20.线程顺序执行的方法
21. 线程间如何通信
数据库
1.数据库的四大特性
2.数据库如何实现可重复读(mvcc+间隙锁)
3.数据库的三大范式
4.数据库的锁
5.数据库索引原理
6.为什么用B+树,不用B树和B-树
7. 最左匹配原则
8.Innodb和myisam区别
9.如何优化数据库(优化sql+优化索引+优化表结构)
10.redis数据结构
11.zset底层实现原理
12.redis持久化机制(AOF+RDB)
13.缓存血崩、缓存击穿和缓存穿透
14.redis快的原因
15.redis过期策略
16.redis分布式锁
计算机网络
1.三次握手和四次挥手的过程
2.TCP/UDP区别
3.TCP如何保证可靠性
4. 在浏览器中输入一个网址到出现页面,发生了什么事
5.HTTP常见状态码
6.HTTP和HTTPS的区别
7.ssl连接过程
8.长连接短连接区别
操作系统
1.进程间通信方式
2.线程通信方式
3.死锁产生的必要条件?如何解决死锁的问题?
4.僵尸进程和孤儿进程产生的原因以及解决方式?
5.如何查看查看进程资源实时占用情况、如何查看内存
6.线程和进程的区别