面试官虐我千百遍,我仍待他如初恋,阿里、腾讯、蚂蚁金服Java技术面试及经验总结

news2024/11/15 15:57:28

能够进一线互联网公司,是大部分程序员奋斗的目标,有很多小伙伴可能因为学历望而止步,其实只要能力够,学历真的不是那么重要!

今天给大家带来ATM(阿里巴巴,腾讯,蚂蚁金服)的Java面试真题,希望能帮助各位读者在奋斗的路上少走弯路。

阿里巴巴Java岗位(技术三面)

一面

1、自我介绍,讲讲求职意向和擅长的技能

2、Tomcat的基本架构是什么?

3、JVM调优,工作中怎么用,GC算法和回收策略有哪些

4、Java中线程池是如何实现的? 创建线程池的几个核心构造参数是什么?

5、Volatile和Synchronize的区别?

6、GC的机制是什么?垃圾回收器的基本原理是还说呢么?是否可以立即回收内存?怎么样主动的通知JVM进行垃圾回收?

7、类加载器双亲委派模型机制?

8、集合的种类和区别,HashMap底层如何实现(JDK1.8有所改动),HashMap和ConcurrentHashMap的区别?

9、Spring IOC如何管理Bean之间的依赖关系,怎么样避免循环依赖?

10、SpringBean创建过程中的设计模式?

二面

1、自我介绍、

2、InnoDB支持的四种事务隔离级别名称是什么? 之间的区别是什么?

3、聊一聊事务的特性

4、什么是MySQL隔离级别?

5、如何理解BTree机制?

6、谈一谈对慢查询的分析?MySQL常用的优化方法有哪些?

7、谈一谈悲观锁和乐观锁以及SQL的实现

8、简述三次握手和四次握手的过程?

9、B+树索引和Hash索引的区别?

三面

1、自我介绍

2、MySQL的锁并发?

3、高并发场景下如何防止死锁,保证数据的一致性?

4、集群和负载均衡的算法与实现?

5、简述分库与分表设计?

6、分库分表带来的分布式困境与对应之策有哪些?

7、加锁的机制是什么?

8、Redis和Setnx命令使如何实现分布式锁的?使用Redis怎么进行异步队列?会有什么缺点?

腾讯Java岗位(技术四面)

一面

1、说说对JVM的理解?

2、treemap和HashMap的区别?

3、多线程的五大状态?

4、MySQL主键和索引的区别?

5、聊聊做的一些项目

6、如何实现session共享?用Redis该如何实现?

7、缓存击穿的概念和解决方案?

8、聊聊微服务,以及微服务之间是如何进行管理的

二面

1、Java中nio和io的区别?常用的类有哪些?

2、Java里面的同步锁了解吗? CountDownLaunch和Cylicbarrior的区别,分别在什么场景下使用?

3、JVM的内存结构,哪些是共享的,哪些是线程私有的? Java虚拟机里堆栈分别存放什么?

4、如何实现一个线程池?

5、Java的类加载在哪些情况下会触发?

6、手写代码:快速排序,单利模式, 画一个工厂模式和装饰者模式的UML类图

7、AOP的实现原理

8、怎么优化慢查询?

9、Java的锁有哪些?可重入锁和不可重入锁的区别?

10、Lock和Synchronized的区别?他们都是可重入锁吗?哪个效率更高?

11、手写SpringMVC DispatcherServlet的大致实现?

三面

1、聊一聊平时的项目并发经验

2、Redis的数据结构? 线程模型? Redis的数据淘汰机制?

3、读过Redis的源码吗?

4、MySQL实现事务的原理

5、MQ底层原理的实现?

6、数据库事务acid,事务操作,怎么加锁?分布式系统锁?

7、什么情况下会发生雪崩?如何解决?

四面

1、介绍一些并发项目

2、技术含量较高的项目,从架构设计到部署问了一遍

3、高并发架构的设计思路

蚂蚁金服Java岗位(技术三面)

一面

1、HashMap和ConcurrentHashMap

2、谈一谈Hash的一致算法

3、乐观锁和悲观锁

4、可重入锁和Synchronized

5、事务的四大特性?

6、事务的二段提交机制?

7、聚簇索引和非聚簇索引

8、举例说一下索引的应用场景和注意事项?

9、当前读和快照读

10、聊一聊类加载的过程?

11、双亲委派机制及其使用原因?

12、聊一聊GC的算法?

13、Http和Https的区别? 以及Https加密的方式

14、线程池的核心参数和基本原理?线程池的调优策略

15、谈谈个人的职业规划

二面

1、聊一聊个人做过的项目,遇到过哪些难点?

2、Collections.sort底层的排序方式?

3、排序的稳定性,以及不同场景下的排序策略

4、Http请求过程,DNS解析的过程

5、三次握手和四次握手

6、简述线程池和并发工具有哪些、

7、数据库的索引和原理

8、频繁老年代回收怎么分析和解决?

9、Spring IOC/AOP相关知识

10、讲讲SpringBoot和SpringCloud的一些应用?

11、阻塞队列不用Java提供的该怎么实现?

12、负载均衡的原理?

13、Redis的数据一致性问题,分布式多节点和单节点环境下分别描述

14、讲讲Docker容器

15、如何实现高并发环境下的削峰、限流?

三面

1、聊一聊项目中用到的中间件(
Dubbo/MQ/Zookeeper/Redis/Kafka)

2、什么情况下会造成雪崩?该怎么避免这种情况

3、高并发架构的设计思路

4、聊一聊以前的项目中遇到的问题和解决策略

5、生活中遇到过哪些挫折?最后怎么解决的

6、生活中遇到的最有成就感的事情?

总结:

一线互联网公司都比较注重实际的项目中解决问题的能力,另外面试点主要围绕JVM、多线程相关、基础知识的底层原理、处理高并发的能力。

相信都是老司机,这里也不扯什么面试技巧了,轻松发挥就好。

这里给大家分享这些年来,我对于技术一些归纳和总结,和自己对作为一名Java高级开发需要掌握那些技能的笔记分享,希望能帮助到有心在技术这条道路上一路走到黑的朋友

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/638006.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

有效延缓痴呆症:延世大学发现梯度提升机模型能准确预测 BPSD 亚综合征

内容一览:随着人口老龄化程度不断加剧,痴呆症已经成为公共健康问题。目前医学界治疗该病还只能通过药物缓解,尚未发现治愈的有效方法,因此,预防痴呆症尤为紧迫。在这一背景下,延世大学的研究人员开发了多个…

90v转5v芯片

摘要:AH8691内置MOS降压型开关芯片:为电动车控制器供电、通信和太阳能充电设备充电提供解决方案 问:什么是AH8691芯片? 答:AH8691是一款内置MOS降压型开关芯片,可将输入电压范围从10V至100V降压转换为稳定…

软件测试必备7大技能

一、测试用例的编写 1.在测试中最重要的文档,他是测试工作的核心,是一组在测试时输入输出的标准,是软件需求的具体对照。编写测试用例,是测试人员的基本功,真正能写好的人并不多。 2.测试用例包含的内容:…

互联网医院牌照申请流程|互联网医院审批流程

​随着科技的不断进步和社会的发展,互联网医院已经成为了当前的热点。而互联网医院的准入门槛自然也就越来越高。如果您计划成立一个互联网医院,您需要了解申请互联网医院牌照所需要注意的方面以及申请的流程。 一、资质申请前的准备 1、立项阶段准备 …

Python实现ACO蚁群优化算法优化LightGBM分类模型(LGBMClassifier算法)项目实战

说明:这是一个机器学习实战项目(附带数据代码文档视频讲解),如需数据代码文档视频讲解可以直接到文章最后获取。 1.项目背景 蚁群优化算法(Ant Colony Optimization, ACO)是一种源于大自然生物世界的新的仿生进化算法&#xff0c…

拍卖房变卖什么意思

法拍房的起拍价一般是评估价的七折。但是有一种法拍房比较特殊,起拍价接近评估价的五折,而且竞争力度很小,基本都是以低价成交的。它,就是处于变卖阶段的法拍房。那么拍卖房变卖什么意思? 一、拍卖房变卖什么意思  人民法院对查…

Linux之快捷键使用

目录 Linux之快捷键使用 histot 定义 用法 选项及作用 参数 断开长命令行 在一行输入多个命令 快捷方式 引用上一条命令的最后一个参数 --- !$ 实现生产环境中,history命令记录操作时间、操作用户、操作IP 1./etc/profile文件中加入以下内容 2.执行 source…

数字孪生是智慧城市管理的新引擎

数字孪生是一种创新的技术和概念,随着技术成熟逐渐为智慧城市管理带来深远的影响。数字孪生将物理世界与数字世界相结合,通过建立物理实体的数字模型,实现对城市各个方面的实时监测、分析和优化。数字孪生在智慧城市管理中扮演着关键的角色&a…

《Spark篇》------ Spark基础

目录 一、Spark简介 1.1、Spark是什么 1.2、Spark的特点 1.3、Spark生态系统 1.4、Spark Core的组件 1.5、Spark的安装流程 1.5.1、基础环境,安装Linux系统、Java环境和Hadoop环境 1.5.2、下载Spark文件并解压缩 1.5.3、编辑profile 1.5.4、Spark-shell运…

小程序 WEUI 隐藏导航栏使用自定义导航栏时Toptips在顶部显示

使用weui的toptips时候&#xff0c;我们的导航栏使用了自定义&#xff0c;高度根据系统来定的&#xff0c;然后使用form表单验证提示弹窗时&#xff0c;会在最上面被遮挡了。 需要使用weui ext-class 来实现穿透修改样式。 ext-class的top使用继承父元素的top即可 <mp-top…

将数组起始地址定向到SRAM2及错误L6220E的排查

今天有个程序要定义两个大数组&#xff0c;一个32k&#xff0c;一个16k。直接编译的话发现通不过&#xff0c;大概是提示空间不够。因为两个数组就占了48k&#xff0c;可是我的STM32L431CB有64k的RAM&#xff0c;怎么会不够呢&#xff1f;查了资料发现这个芯片的SRAM分为两块&a…

银河麒麟kylin v10 apt deb包问题记录

银河麒麟kylin v10 apt deb包问题记录 https://www.kylinos.cn/support/document/48.html 该补丁支持银河麒麟桌面操作系统V10 2101、V10 0402、V10 0416版本升级到银河麒麟桌面操作系统V10 2107。 下载链接如下 &#xff08;1&#xff09;官网下载链接&#xff1a; AMD64…

Python期末大作业——获取北上广深历史天气并做数据可视化

前言 嗨喽&#xff0c;大家好呀~这里是爱看美女的茜茜呐 知识点: 动态数据抓包 requests发送请求 结构化非结构化数据解析 一、开发环境: 所使用软件工具&#xff1a; python 3.8 运行代码 pycharm 2022.3.2 辅助敲代码 专业版 需安装第三方模块&#xff1a; requests…

Spring AOP 快速入门

文章目录 一. 什么是Spring AOP二. 为什么要学习Spring AOP三. 学习 Spring AOP3.1 AOP 的组成3.1.1 切面 (Aspect)3.1.2 切点 (Pointcut)3.1.3 通知 (advice)3.1.4 连接点(Joinpoint) 3.2 实现 Spring AOP1. 添加 Spring Boot 的 AOP 框架2. 创建切面3. 创建切点4. 创建通知5.…

vue3自定义指令——元素平滑移动

vue提供一个用户可以高度自定义的指令入口directives 利用这个入口我们实现一个常见的元素平滑移动的自定义指令 ‘sl’ 首先我们结合指令创建一个多元素的界面&#xff1a; 这个场景我们在很多网站&#xff0c;商城都有见过&#xff0c;特别对于移动端的清单类界面 我们的终极…

Linux如何找回root密码

Linux如何找回root密码 首先&#xff0c;启动系统&#xff0c;进入开机界面&#xff0c;在界面中按“e”进入编辑界面。如图 进入编辑界面&#xff0c;使用键盘上的上下键把光标往下移动&#xff0c;找到以““Linux16”开头内容所在的行数”&#xff0c;在行的最后面输入&…

【几分醉意赠书活动 - 03期】 | 《Python系列丛书》

个人主页&#xff1a; 几分醉意的CSDN博客主页_传送门 个人主页&#xff1a; 陈老板的CSDN博客主页_传送门 赠书活动 | 第三期 本期好书推荐&#xff1a;《Python系列丛书》 粉丝福利&#xff1a;书籍赠送&#xff1a;共计送出30本 参与方式&#xff1a;关注公众号&#xff1a;…

IP-GUARD是否支持对打了水印的文档去除水印?

是否支持对打了水印的文档去除水印&#xff1f; 支持&#xff0c;从4.64.1005.0版本开始&#xff0c;支持对打了文档水印的文档做去水印的操作&#xff0c;但只是支持去除非图片类型的显式水印。支持右键文件去除、申请去除、自我备案去除三种方式。 例如&#xff1a; 对客户端…

短视频电商平台的流量货币化率

通过对内容社区的流量规模流量货币化率的估算&#xff0c;可以得出对应的商业化即变现能力&#xff0c;如电商GMV&#xff0c;广告收入规模。 货币化率 Take Rate 货币化率&#xff08;Take Rate&#xff0c;TR&#xff09;是电商平台报表指标而非业务指标&#xff0c;是广告收…

一步到位Python Django部署,浅谈Python Django框架

Django是一个使用Python开发的Web应用程序框架&#xff0c;它遵循MVC&#xff08;Model-View-Controller&#xff09;设计模式&#xff0c;旨在帮助开发人员更快、更轻松地构建和维护高质量的Web应用程序。Django提供了强大的基础设施和工具&#xff0c;以便于处理复杂的业务逻…