网易面试Java开发凉凉经,面试官:基础不牢,技术不够深入,无缘offer,无缘网易......

Posted java构架师

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了网易面试Java开发凉凉经,面试官:基础不牢,技术不够深入,无缘offer,无缘网易......相关的知识,希望对你有一定的参考价值。

前言

我也是经朋友介绍来的网易,先是投了简历,然后朋友通知我说可以面试了,于是我就带着忐忑的心理来到网易公司。面试的是一位帅气的光头叔叔,下午三点开始,之前准备了很多准备应付技术问答,结果基础还是太差了,无缘网易…
img
首先还是感谢吧,感谢网易面试官的肯定和建议。

网易一共经历了四轮面试,前三轮技术面,第四轮总监面。

岗位:我投递的是杭研所的Java开发岗位。
行程:半天的时间南京=杭州之间穿行,单程2个小时,从杭州东站=网易大厦,单程1个小时(如果能买到城站高铁动车票可以从城站触发。)
吃饭:可以去网易食堂,免费吃,只要人进去,到吃饭时间点就可以蹭饭。
面试:4面,很遗憾我没有HR面,本来想的是去一面游的,划水过了一面,也算是知足了。
下面主要从Java核心技术、多线程并发编程、数据库、个人项目和课题、框架技术等方面标记出我还记得的问题。

一面:技术(65分钟左右)

  • 自我介绍(个人信息:一分钟说完了);

  • 抽象类和接口的区别

  • 抽象类内方法如果全部是抽象的,是不是就是接口?为什么有的类继承一个类后,还要实现多个接口?

  • 多线程中,线程池用过哪些线程池?

  • 线程池中所有的参数讲解一下

  • 线程池中从corePoolSize到maximumPoolSize转变过程,然后一直问我反向转变的操作

  • HTTP发送请求和接收响应的整个流程;

  • 403和500状态分别讲解一下,他们之间有什么区别;

  • 一个已知存储了数据的HashMap中如何让所有的键修改成"网易+原来的键",意思是在所有的key中添加"网易"这个前缀。

  • spring的AOP原理和底层实现

  • Spring的注解讲一下;(框架技术)

  • 静态代理和动态代理区别讲一下;(Java核心技术)

  • 静态代理和适配器设计模式的区别;(Java核心技术)

  • tcp和udp的区别;

  • cglib底层实现;(框架技术:懵逼)

  • 数据库的乐观锁原理和实现;(数据库:懵逼)

    差不多这么多吧,还有的记不得了,主要是实际问题考虑和讨论的时间长一点。

二面:技术(50分钟)

  • jdk8的新特性,如果在jdk7中要实现lambda表达式,你会怎么实现

  • hashcode 和 equal

  • wait 和 notify

  • hashtable的实现

  • 线程安全的有哪些,jdk不设置同步的线程安全的有哪些

  • CAS,其中出现ABA问题怎么解决

  • Error和Exception的区别

  • Session和cookie的区别,如果浏览器禁用了cookie怎么解决

  • IOException和NPE各属于什么异常,是否需要运行才能报异常,为什么这么设置

  • jvm的一些工具,如何检测内存泄露

  • AtomicReference源码

  • jvm 类加载的全过程每一步做什么,双亲委派

  • 面向对象、设计模式的理解

  • redis和Kafka底层

  • maven如何解决包冲突

  • gradle用过吗

  • git中 rebase 和 merge的区别

三面:技术(一小时左右)

  • 数据库索引的设计原理以及意义
  • 接着上面的问题,问了给定一个数据库,如何设计索引,有什么要注意的?
  • 给定淘宝秒杀场景,请设计系统实现秒杀
  • 微博粉丝和关注者,以及用户信息,请实现数据库表,来关联起这些表
  • 针对我设计的表,进行查询操作,问我所有的表查询完后,多少次操作。
  • 之前实习的做了什么项目?讲解一下。(项目经验)
  • 就着项目,提出海量数据的时候,集合存不下怎么办
  • Spring中的事务原理讲一下;
  • 数据库里的事务原理讲一下
  • 手写jdbc连接数据库的代码
  • 数据库的事务特性有哪些?(数据库)
  • 通信是偏软件还是硬件?为什么学Java
  • 最后问我有什么要问的?(提问环节:我真想问问他是不是搞数据库的,大部分都是数据库,虐死。。最后就问了两个小问题,让我回到前台那边等通知)

四面(总监面 25 min)

  • 自我介绍
  • 大学学过哪些课程?然后问了某些课程的分数
  • 一个无序数组建堆的时间复杂度是多少?
  • 死锁是什么?如何产生的(产生死锁的条件)?
  • TCP 中的滑动窗口
  • 看过《算法导论》这本书嘛?
  • 职业规划
  • 为什么选择杭州而不是北京
  • 印象最深的项目

面试总结:

果不其然,终结,毕竟我是渣硕渣技术,被虐成狗,没有什么项目经验,被面试官实际问题问的不知所措。对我来说,网易问的东西广而深,算是让我长见识了,好好学习,天天向下。

说实话,我不想再折腾了,因为经过这么多笔试、面试,发现自己的技术真的还很差,基础不牢固,知识点掌握的不够深入,我习惯性在面试结束后让面试官点评一下自己的表现,听到最多的大概就是“对某某知识点理解的不够深入”“加强基础”。

如果最终没能保研,我将全身心投入,准备明年的春招,据说到时候压力更大、更难,能怎么办呢?加油吧!!!

面试基础很重要!

Java面试知识点汇总

  • 数据类型
  • String
  • 运算
  • 关键字
  • Object 通用方法
  • 继承
  • 反射
  • 异常
  • 泛型
  • 注解
  • 特性
  • 容器中的设计模式
  • 源码分析
  • Vector
  • CopyOnWriteArrayList
  • LinkedLis
  • HashMap
  • ConcurrentHashMap
  • LinkedHashMap
  • synchronized 关键字
  • volatile 关键字
  • ThreadLocal
  • 线程状态转换
  • 使用线程
  • 基础线程机制
  • 中断
  • 互斥同步
  • J.U.C - AQS
  • 线程不安全示例
  • 内存模型
  • 线程安全
  • 锁优化

Java相关

JVM

1.运行时数据区域
2.垃圾收集算法
3.类加载过程:
4.引用类型
5.垃圾收集算法
6.垃圾收集器
7.内存分配与回收
8.内存分配策略

计算机网络

1.简述TCP的三次握手、四次挥手,为什么要三次握手?为什么client会进入TIME_WAIT?
1.1为什么要进行三次握手?
1.2为什么会有TIME_WAIT?
2.TCP的拥塞控制
3.浏览器输入url请求服务器的过程,分析其中哪些部分用到缓存。
4.ARP(地址解析协议)
5.HTTP的流量控制,具体的控制算法
6.计算机网络体系结构
7.路由选择协议
8.UDP和TCP比较

MySQL

1.mysql的索引,最左匹配原则
2.mysql的主从复制
3.mysql的聚集索引、非聚集索引
4.mysql联合索引,要注意什么?
5.为什么数据库要使用B+树来实现索引?
6.MySQL索引
7.InnoDB和MyISAM比较
9.MySQL数据库是怎么插入的?

数据库
1.数据库并发一致性问题
2.封锁
3.多版本并发控制
4.异常和数据库范式
5.连接

数据结构
1.B+树和B树的区别
2.红黑树
3.红黑树和平衡二叉树的区别

框架
1.Mybatis动态代理
2.Spring IOC是什么?怎么实现的?
3.Spring IOC里面的反射机制怎么实现的?

技术外这些准备要做好

首先是准备简历

你要明确的一点是:你不会的东西就不要写在简历上。另外,你要考虑你该如何才能让你的亮点在简历中凸显出来,

比如:你在某某项目做了什么事情解决了什么问题(只要有项目就一定有要解决的问题)、你的某一个项目里使用了什么技术后整体性能和并发量提升了很多等等。

面试和工作是两回事,聪明的人会把面试官往自己擅长的领域领,其他人则被面试官牵着鼻子走。虽说面试和工作是两回事,但是你要想要获得自己满意的 offer ,你自身的实力必须要强。

下面这几点你必须知道 :

  1. 大部分公司的HR都说我们不看重学历(骗你的!),但是如果你的学校不出众的话,很难在一堆简历中脱颖而出,除非你的简历上有特别的亮点,比如:某某大厂的实习经历、获得了某某大赛的奖等等;
  2. 大部分应届生找工作的硬伤是没有工作经验或实习经历,所以如果你是应届生就不要错过秋招和春招。一旦错过,你后面就极大可能会面临社招,这个时候没有工作经验的你可能就会面临各种碰壁,导致找不到一个好的工作;
  3. 写在简历上的东西一定要慎重,这是面试官大量提问的地方;
  4. 将自己的项目经历完美的展示出来非常重要。

Java学习路线和方法推荐

下面的学习路线以及方法是博主根据个人学习经历总结改进后得出,我相信照着这条学习路线来你的学习效率会非常高。

先说一个初学者很容易犯的错误:上来就通过项目学习。很多初学者上来就像通过做项目学习,特别是在公司,我觉得这个是不太可取的。

如果的 Java基础或者 Spring Boot 基础不好的话,建议自己先提前学习一下之后再开始看视频或者通过其他方式做项目。

我不知道为什么大家都会说边跟着项目边学习做的话效果最好,我觉得这个要加一个前提是你对这门技术有基本的了解或者说你对编程有了一定的了解。
在这里插入图片描述
接下来是每个模块我整理出来的文档学习资料,帮助大家更细致化的学习。

这些内容均免费分享给大家,需要完整版的朋友,点击这里查看获取方式

《Java核心知识点合集(283页)》

内容涵盖:Java基础、JVM、高并发、多线程、分布式、设计模式、Spring全家桶、Java、MyBatis、ZooKeeper、Dubbo、Elasticsearch、Memcached、MongoDB、Redis、MySQL、RabbitMQ、Kafka、Linux、Netty、Tomcat、数据库、云计算等
在这里插入图片描述

《Java中高级核心知识点合集(524页)》

在这里插入图片描述

接下来分享的系统学习资源以详解各大互联网公司的Java常见面试题为主线,从面试的角度带你介绍必备知识点,以及该知识点在项目中的实际应用。

帮你在现在的基础上,重新梳理和建立Java开发的知识体系。无论是你短期内想提升Java内功实力,突破自己工作中的能力瓶颈,还是准备参加Java面试,都会在这份资料中有所一些收获。

《Java程序员大厂冲刺指南《面经篇》》

在这里插入图片描述

《 史上最全阿里Java面试题总结及答案》

在这里插入图片描述

《2021金三银四最新出炉《Java中高级面试题合集》》

在这里插入图片描述

《Java高级架构面试知识点整理》

在这里插入图片描述

《1000道 互联网Java工程师面试题 (485页)》

在这里插入图片描述

《架构面试专题》

在这里插入图片描述
在这里插入图片描述

写在最后

博主认为只有勤奋才能成就人生!

以上这些内容均免费分享给大家,需要完整版的朋友,点击长按图片或者扫二维码进群找管理员即可免费获取!点击一键三连提高通过率

以上是关于网易面试Java开发凉凉经,面试官:基础不牢,技术不够深入,无缘offer,无缘网易......的主要内容,如果未能解决你的问题,请参考以下文章

Java面试小秘诀

字节跳动Android实习面试凉凉经

java开发网易电话面试 一面总结

网易Java后端开发面试心得

字节跳动Java实习面试凉凉经,含答案解析

Java面试中80%的人都会遇到的问题