目录

Java基础

JVM

计算机网络

设计模式

MySQL

spring

redis

dubbo

zk

mybatis

算法题:

应用

最后说些感想:


Java基础

最常考的:

HashMap、ConcurrentHashMap、ArrayList、LinkedList、String、Stringbuffer、Stringbuilder、Synchronized 、Volatile、AQS、ReentrantLock、线程池。

面过几家大厂,都很喜欢把上面这些常考的知识点进行深挖。所以有源码的最好能看一下源码。Volatile、Synchronized这种要了解一下底层实现。

  1. 8种基本数据类型和其范围
  2. string的intern()方法
  3. String类的底层实现
  4. string、stringbuffer、stringbuilder的区别
  5. 自动拆箱、自动装箱
  6. final关键字
  7. exception和error的区别
  8. 运行时异常的举例
  9. 四种引用类型
  10. 反射机制
  11. 实现线程的方法(算上线程池一共四种)
  12. 线程的状态
  13. wait()和sleep()的区别
  14. 线程池参数、拒绝策略、
  15. 线程池的原理 (先是核心数 超过核心数 进阻塞队列 等...)
  16. 线程池有几种(最好把参数也说一下)
  17. AQS(队列同步器)的实现 和内部原理
  18. volatile的原理:原子性、指令重排、JMM最好都说到
  19. Synchronized的原理、锁升级
  20. Synchronized和LOCK区别
  21. reentrantReadWriteLock相关的知识
  22. threadLocal的原理(看源码)
  23. NIO的原理
  24. 集合类的架构。集合类相关的东西、了解的越多越好。源码吃透了最好。
  25. hashmap:高频考点。建议看源码,了解的越多越好。
  26. hashmap 负载因子为啥是0.75.
  27. hashmap put()函数的过程,
  28. hashmap node内部类的实现
  29. HashMap为啥头插法会出现循环
  30. 某公司还让我手写过hashmap 的 put函数和node内部类。
  31. concurrentHashmap(1.7和1.8的区别)数据结构
  32. ArrayList 和LinkedList的区别
  33. 页面跳转的两种方式(重定向和转发)
  34. 为什么重写equals一定要重写hashcode?

JVM

  1. 运行时数据区 或者叫内存模型
  2. 垃圾回收算法
  3. 垃圾收集器
  4. 双亲委派
  5. OOM问题

计算机网络

网络基础差的可以看一下《网络是怎样连接的》

  1. http状态码 2** 3** 4** 5**
  2. TCP和UDP的区别
  3. 三次握手,四次挥手,为啥是握手三次
  4. HTTP请求、响应消息的内容,可以举例说明
  5. DNS
  6. https的原理(这个被问了好多次)

设计模式

  1. 说说单例的几种实现方式,
  2. 饿汉和懒汉模式,哪个是线程安全的(饿汉)
  3. 单例中双检锁模式怎么实现的
  4. 观察者模式的思想
  5. 动态代理模式的实现原理

MySQL

  1. myisam和Innodb区别
  2. 事务的定义
  3. 事务隔离机制
  4. 索引的数据结构(hash、B+树)两种数据结构的索引使用场景,为什么使用B+树
  5. 聚簇索引和非聚簇索引
  6. 索引覆盖
  7. 索引下推
  8. 联合索引
  9. 索引的缺点、设计索引的时候应该注意什么
  10. 索引优化
  11. MVCC
  12. undolog、redolog日志
  13. 写一个sql实现死锁

spring

因为springcloud没用过没在简历上写,也没人问过

  1. spring常用注解
  2. spring中bean的作用域,Singleton和prototype的区别
  3. spring中有哪些扩展点
  4. spring如何解决循环依赖(三级缓存)
  5. springBean的生命周期
  6. spring IOC AOP
  7. spring中有哪些设计模式
  8. spring事务、和spring事务传播机制
  9. springMVC的原理(就是dispatcerServlet的那个图)
  10. spring容器怎么感知到注解
  11. springBoot自动配置

redis

  1. AOF、RDB。
  2. 数据类型
  3. redis大key问题
  4. 雪崩、穿透、击穿的场景和解决办法。(雪崩解决方法一般都会回答布隆过滤器,然后还会接着问布隆过滤器咋实现的)
  5. redis慢指令(keys )
  6. redis分布式锁的实现
  7. redis为什么是单线程的
  8. 哨兵模式
  9. redis的拒绝策略
  10. redis的过期键删除策略
  11. redis集群中槽是怎么分配的
  12. 跳跃表咋实现的
  13. redis的应用场景

dubbo

  1. dubbo的组成(Customer、Provider、Monitor、Registry、Container)
  2. dubbo的协议
  3. dubbo的分层
  4. 注册中心挂了可以继续通信吗
  5. RPC框架的原理
  6. dubbo负载均衡策略                                                                                                                                                          RandomLoadBalance随机(缺省)、LeastActiveLoadBalance最小活跃数、ConsistentHashLoadBalance一致性hash、RoundRobinLoadBalance轮询
  7. dubbo配置域生效的优先级

zk

  1. zk的通知机制
  2. zk服务器某个节点不可用会发生什么
  3. Znode
  4. ZK集群节点数量为什么要是奇数个?

mybatis

经过多次面试发现mybatis问的其实不多

  1. #{}和${}的区别
  2. 一级缓存和二级缓存

算法题:

  1. 最小路径和 https://leetcode-cn.com/problems/minimum-path-sum/
  2. 整数反转 https://leetcode-cn.com/problems/reverse-integer/
  3. 仅仅反转字母 https://leetcode-cn.com/problems/reverse-only-letters/
  4. 快排的思想 (让基准值回到他正确的位置)

应用

  1. 工作中有没有遇到OOM,OOM的工具
  2. 如何保证接口的幂等性
  3. 如何接口限流
  4. 简单设计一个秒杀系统
  5. 工作中SQL优化的案列
  6. 如何设计一个数据库;很发散的一道题,考察的也很全面。索引、数据类型的选用、三范式。数据库相关的会啥就说啥就行了。
  7. 如何保证redis和MYSQL数据的一致性

最后说些感想:

1.找工作是持久战(自己水平不高,遇到了很多挫折)。

不要轻易放弃,尤其是在今年这样不好的大环境下,更有做好持久战的准备。其实有些坎儿,扛过去了人就上了一个台阶儿。就像很多NBA球员,经历过一次总决赛、拿了次总冠军之后,在下赛季往往能打出更好的表现。一是更自信了,二是经历了挫折的洗礼,人得到了成长。所以在面对挫折实在坚持不下去的时候,告诉自己咬牙再坚持一下。

2.适当拔高简历。

简历是入场券,是获得面试机会的钥匙。没有面试机会,一切都是扯淡。

所以如果你有对自己的评价60分,最开始的时候可以把简历写成80分。80分的简历,大概率面试机会不会少。然后面试官就会拿80分的水准来考你,这样的面试如果运气好过去了,捡到了。

大概率是过不去的。过不去也不怕,至少你知道了一场80分的面试是什么样的,这样面试之后就有了方向,也认识到了自己的不足,按照这个方向学习。总会有达到80分的那一天。反正就是要勇敢些,不要怕面试官的黑脸。

3.接触更多优秀的人。

老东家给力,裁了些校招生,有的直接回老家了,有的卧薪尝胆几个月,最后去了比原来更好的互联网公司。说来也巧,我有两位大学同样离开了校招的公司,但是他们都通过自己的努力找到了更好的公司。有他俩在我之前做榜样,我的动力和信心也增加了不少。我想起在18年我校招的时候,几个同学一起学习、面试,一起总结经验。没有他们的鼓励和陪伴,我现在啥样真的不好说。所以,真的要接触更多优秀的人。

4.人活着脸皮一定要厚啊!

要有一种说干就干的精神。比如不要惧怕任何大厂的面试,不要怕面试官的黑脸。路是走出来的,不是想出来的。有些事筹划着筹划着,就不是你的了,有时候再等等,再等等,汤都没得喝。实践是最好的学习方法,实践和认识是纠缠在一起的。不要害怕实践,不要顾及脸面。

5.持续学习。

首先很多知识都是需要经常复习,且常读能够常新的。很多东西,时常拿出来复习一下,再面试的时候就能够节省很多时间。

大厂都考编程题,编程题一般都是需要日积月累的,LeetCode要日常刷一刷。

2020 社招 JAVA面试题总结相关推荐

  1. 阿里巴巴社招Java面试题做题记录

    阿里巴巴社招Java面试题 1.String和StringBuffer的区别 运行速度和线程安全两方面: 运行速度:StringBuilder >StringBuffer >String ...

  2. 邮储社招Java笔试题_2019年及历年中国邮政储蓄银行社招笔试题和参考答案6套

    2019年及历年中国邮政储蓄银行社招笔试题和参考答案6套 目录: 1.2016年中国邮政储蓄银行社会招聘笔试题和参考答案 2.2019年5月中国邮政储蓄银行社会招聘笔试题和参考答案 3.2019年中国 ...

  3. java北大青鸟试题_10个常见2020春招Java面试题及注意事项!

    春招开始啦,在面试Java工程师的时候,同学们会经常会遇到一些很困扰的问题:感觉自己的Java技术能力还不错,甚至是游刃有余,但是到了面试的时候就凉凉:对面试官提出的问题感到迷惑,不理解面试官到底是想 ...

  4. java重写paint方法时怎么样不覆盖文字_美团十月社招Java面试题合集,JVM+Spring+Spring,看了答案其实也不难...

    欢迎关注专栏<Java架构筑基>--专注于Java技术的研究与分享! Java架构筑基​zhuanlan.zhihu.com Java架构筑基--专注于Java技术的研究与分享! 后续文章 ...

  5. 社招java阿里_阿里社招Java面试题总结一

    面试题 1.String和StringBuffer的区别 2.gc的概念,如果A和B对象循环引用,是否可以被GC? 3.Java中的内存溢出是如何造成的 4.String s = "123& ...

  6. 阿里巴巴java社招面试_阿里社招Java面试题总结——面试官分享

    面试题 1.Java中的内存溢出是如何造成的 2.gc的概念,如果A和B对象循环引用,是否可以被GC? 3.Error.Exception和RuntimeException的区别,作用又是什么? 4. ...

  7. 阿里2020春招Java实习生笔试题

    阿里2020春招Java实习生笔试题 第1题 第2题 今天上午参加了阿里实习笔试,2个编程题(60分钟),做的简直是惨不忍睹,一个都没出来.虽然和面试无缘了,但希望能帮到后面笔试的同学,所以将题目大概 ...

  8. 网易社招Java面试(附详细答案)

    今天看到网易社招Java岗位的面试题,大致浏览了下,发现还没有答案出来,所以自己就搜索整理下,将答案分享出来,由于水平有限,如发现错误或者疑问,欢迎斧正和讨论,大家一起进步 1. redis有哪几种数 ...

  9. 美团社招Java开发一面,二面,三面,四面合并面经

    作者:reed,一个热爱技术的斜杠青年,程序员面试联合创始人 美团点评社招java一面 1.做一下自我介绍吧,简单说一下你的项目? 2.有遇到过内存泄漏吗?你们是怎么解决的?这个前阵子确实遇到过一次, ...

最新文章

  1. python可以做什么有趣的东西-python能做哪些生活有趣的事情
  2. 99行不用指针 c语言贪食蛇,关于C语言指针的问题
  3. android高德地图截屏,地图截图功能
  4. 菊安酱的机器学习实战
  5. 解决无线路由器无法进行账号认证上网的问题
  6. python自行实现支付宝证书签名验签全流程
  7. JS实现浏览器菜单命令
  8. simplest tensor core gemm sample
  9. MATLAB实现混淆矩阵
  10. 暴露自己IP地址有危险吗?
  11. Natural number
  12. 计算机组成原理简单模型机实验,CPU 与简单模型机设计实验
  13. YV12和I420的区别 yuv420和yuv420p的区别
  14. 功能测试---正交实验法
  15. 2021年上海会展行业发展现状及重点企业对比分析:展览面积为1086万平方米,同比减少1.97%[图]
  16. 多台FX5U之间无线MODBUS组网通讯步骤详解
  17. 0030铁道部花大价钱打造的12306订票网站的核心模型设计思路其实胜过无数网站
  18. 宣传片拍摄过程详细解析
  19. 互联网日报 | 4月28日 星期三 | 创维汽车品牌正式发布;Redmi正式进军游戏手机;网宿科技旗下云计算业务独立运营
  20. 口才技巧|应对不同的人的口才技巧

热门文章

  1. python操作pdf与图片相互转换
  2. 如何安装java-jdk
  3. 关于Error in render: TypeError: Cannot read property '0' of null问题的解决方法
  4. chrome 导入html书签,怎么把谷歌浏览器书签导出来?怎么将书签导入到别的浏览器中?...
  5. CC3200之ADC引脚使用+ad转换器的基本原理
  6. javascript制作钟表
  7. Centos7 常用的命令
  8. python中的bisect模块与二分查找
  9. 漂浮广告是什么?漂浮广告如何设置
  10. 活的恬淡宁静  萃取生命真谛