curd两年,四面阿里java后端,才发现并发编程和JVM必不可少

永远不会有正当其时的时候,你总会觉得要么年纪太轻,要么太老,要么太忙,抑或是其他什么原因。如果你总是为找不到完美的时刻而困扰,那么,完美的时机永远不会出现。

image.png

阿里一面

=======================================================================

1.自我介绍,包括做过项目。

2.有看过哪些JDK源码,了解哪些常用库。

3.集合框架HashMap的扩容机制,ConcurrnetHashMap的原理

4.jvm内存模型与gc内存回收机制

5.classloader结构,是否可以自己定义一个java.lang.String类,为什么? 双亲代理机制。

6.了解哪些设计模式,6个设计原则分别是什么?每种设计原则体现的设计模式是哪个?

7.关于设计模式看了哪些书?书名是什么?

8.uml模型图画过哪些? 类图中类之间的关系有哪些,区别分别是什么?

9.画uml中类图时候用过一种虚线么?做什么用的?

10.做过应用相关性能测试的,举个例子,实际项目中怎么使用的。

用过并发框架相关的哪些内容

11.了解哪些osgi的框架?

12有没有做过jvm内存调优,如何做的,举例子,用过哪些工具?

阿里二面

=======================================================================

1.自我介绍

2.看过哪些源码

3.java的io库的类结构图所用到的设计模式如何体现

4.画出自己设计过的设计模式如何体现,画出结构图,并进行讲解。

5.画出自己做的架构的项目架构图 如何扩展等

6.数据库设计中主键id设计的原则

7.jvm内存调优用过哪些工具,jstate做什么用的?如何dump出当前线程状态?

8.并发框架是否有了解

9.classloader的双亲代理机制

10.应用服务器的jvm调优实际经验,如何做的,在哪里用到的

11.在哪里获取最新资讯,逛什么论坛。最新的Swift语言有什么看法

12.设计原则与设计模式对应

13.servlet/filter作用原理配置

14.ibatis in操作 以及一个属性的作用

15.spring aop 用了什么设计原则,自动注入配置是做什么用的

16.jboss的类加载器

17.session共享机制

18.做过最成功的一件事情是什么?

19.最大的争执是什么?

20.为什么想要离职去阿里

阿里三面

=======================================================================

1.现在公司负责什么?

2.项目主要目的是

《一线大厂Java面试题解析+后端开发学习笔记+最新架构讲解视频+实战项目源码讲义》

【docs.qq.com/doc/DSmxTbFJ1cmN1R2dB】 完整内容开源分享

做什么的?

3.公司管理方式、项目问题反馈机制是什么?

4.Java 的序列化做什么用的 序列化id会出现哪些问题?

5.OSGi用过哪些?类加载器结构如何,如何在一个bundle中加载另外一个bundle中的一个类?

6.nio是否了解 阻塞之后通知机制是怎样的?

7.uml设计类图如何画,类之间关系以及区别

8.spring如何不需要配置文件加载bean定义,可能是问自动注解或者是properties文件定义bean

9.ibatis等框架是不是都是实际在使用的,技术细节

10.为什么想离职?

阿里四面

=======================================================================

1.自我介绍

2.公司做什么,业务, 负责内容,汇报机制

3.企业级应用安全相关

4.http协议,返回码,301与302区别

5.多线程并发用过哪些

6.应用服务器相关,谈最熟悉的

7.为什么离职

基础

=====================================================================

基础方面我的建议是一超多强,也就是有一个或者几个小的地方特别精通,但是广度要有,不要盲目追求mq这些东西,实际的面试还是以(408-计算机组成)+数据库为主的,也就是说当你os、网络、数据库还不错的时候已经满足了进大厂的需求,再熟悉两个知名中间件,就可以去收割了,应届生不建议死磕分布式、微服务之类的东西,很容易搞崩自己的心态。事实上我的数据库因为在迷茫期读了掘金小册和innodb存储引擎两个,所以理论知识较为扎实,但我的os非常差,只能讲讲进程线程内存这些基础的,但还是有了些小的offer,所以大家一定不要贪多。另外语言方向我只懂Java,一些小的建议就是Java开发要有能力把os的问题全扯到虚拟机和并发上来,另外Java的源码不一定追spring,但是juc和util下的集合之类的一定要有理解,尤其是阿里之类的真的会为源码第一行是什么的,千万要谨记。

另外可以记住类似于双重校验之类的思路,还有不要死记硬背,比如虚拟机的类加载器不要只看书,其实源码很简单的流程,可能只需要半天你就从背书仔到了源码大佬,很多事情一定要进去,不要在外面观摩。

这里给大家推荐一些源码笔记吧,觉得对自己的帮助非常大。

如何获得这份优质的资料呢?

================================================================================

快速领取通道:点这里直达免费获取!诚意满满!!!

并发编程核心笔记(必看)

===============================================================================

image.png

并发编程共享模型篇

============================================================================

  • 并发编程概览

  • 进程与线程

  • Java线程

  • 共享模型之管程

  • 共享模型之内存

  • 共享模型之无锁

  • 共享模型之不可变

  • 共享模型之工具

image.png

模式篇

image.png

应用篇

  • 1
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值