首页 > 其他分享 >美团一面,看看你能否回答上来?

美团一面,看看你能否回答上来?

时间:2023-04-28 23:36:44浏览次数:38  
标签:Java HashMap 一下 美团 问题 能否 线程 JVM 上来


关注公众号“Java后端技术全栈”

回复“000”获取程序员必备电子书

大家好,我是老田,今天给大家分享的是一位网友,去美团点评面试遇到的技术问题(一面),希望你先用这些题目进行默答,看看自己知道多少。

题目

1、做一下自我介绍吧,简单说一下你的项目?

2、有遇到过内存泄漏吗?你们是怎么解决的?这个前阵子确实遇到过一次,还算运气比较好。

3、java的基本类型有哪几个?String是不是java的基本类型?String为什么要是final类型的?

4、反射机制的底层实现是什么?动态呢?动态的实现原理?

5、HashMap了解吗?说一下HashMap相关的一些东西?HashMap是线程安全的吗?为什么是线程安全的?ConcureentHashMap了解吗?他是如何实现线程安全的?你刚才说1.8基于CASCAS的ABA问题怎么解决?

6、说一下JVM的线程模型?这些区域都分别是干啥用的?Java线程模型和JVM线程模型注意区分、总结下,网上很多文章都是错的。

7、说一下java类加载器的工作机制?类加载在那个区域进行的?

8、说一下java的线程模型?violate了解吗?他的原理是什么?violate是线程安全的吗?为什么不是?

9、保证线程安全的解决方法有哪些?说一说读写锁吧,读写锁的读

10、数据库的索引有哪几种?为什么要用B+树来做索引?组合索引和几个单个的索引有什么区别?数据库的大表查询优化了解吗?MVCC机制了解不?MVCC机制有什么问题?怎么去解决这个问题?MySQLmysql 慢语句调优做过吗?说说你是怎么做的?

11、Redis了解吗?你说说怎么用Redis实现分布式锁?

12、Spring中Bean的作用域,Spring MVCcontroller是线程安全的吗?怎么去保证线程安全呢?

(面经来自于网友:两年工作经验、山鲁亚尔)

看完上面的这些题目,你觉得自己能回答上来多少?按照100分制,你给自己多少分?

问题分析

1、做一下自我介绍吧,简单说一下你的项目?

两个问题,一是做一个自我介绍,另外就是介绍项目,项目介绍你最熟悉的,或者最能拿出手的项目,不一定就是最近在做的项目。

2、有遇到过内存泄漏吗?你们是怎么解决的?这个前阵子确实遇到过一次,还算运气比较好。

这个问题,就是靠平时总结,如果真的没有遇到过,也是可以自己模拟的,然后使用各种命令和工具进行排查。在面试时候被问到,就大致说一下排查思路,排查过程中用到的命令和工具就可以了。

3、Java的基本类型有哪几个?String是不是Java的基本类型?String为什么要是final类型的?

前面两个问题都是考察基础的,第三问就得自己反思了,为什么要设置成final类型,就得想想final修饰类的时候,有什么特性?在这里起到什么作用?

4、反射机制的底层实现是什么?动态呢?动态的实现原理?

这个也算是考察基础知识是否扎实,重点在动态,以及动态和反射的关系。

5、HashMap了解吗?说一下HashMap相关的一些东西?HashMap是线程安全的吗?为什么是线程安全的?ConcurrentHashMap了解吗?他是如何实现线程安全的?你刚才说1.8基于CAS?CAS的ABA问题怎么解决?

这是几个问题,

HashMap的问题

  • 你得说一下HashMap是什么,
  • 底层采用什么数据结构实现的,
  • 最好说一下put的过程
  • JDK版本各版本中是怎么样的。
  • HashMap为什么是线程不安全的?

ConcurrentHashMap问题

  • ConcurrentHashMap是什么?
  • ConcurrentHashMap底层数据结构是什么?
  • JDK版本不同,ConcurrentHashMap在设计上有些什么区别

CAS问题

  • CAS是什么?
  • CAS存在什么问题
  • ABA问题是什么
  • ABA问题如何解决

别想看这个题目,很多人都挂在这个题目上。背背面试题,再加上稍微一点点的理解,这些问题都能应对。

6、说一下JVM的线程模型?这些区域都分别是干啥用的?java线程模型和jvm线程模型注意区分、总结下,网上很多文章都是错的。

考察的是JVM内存模型,通常也是考察JVM运行时数据区,注意,这里千万别把Java内存模型搞进来,Java内存模型叫做JMM。

说到JVM运行时数据区,就会提到线程私有和线程共享。

尤其是Java虚拟机栈、堆、方法区,这三个一定的说清楚。

栈和线程的关系是什么?栈中存放的是什么?为什么会SOF?

堆和对象内存分配有关系,所以肯定会聊到对象的生命周期,那就会聊到类是怎么被加载到JVM中的?如何判断一个对象已经死了?同时也会聊到垃圾回收算法有哪些?垃圾收集器有哪些?最新的垃圾收集器是什么?有什么特性?

熟悉哪些JVM调优参数?

这个问题,也是很大部分人会挂的,我也在线模拟面试过很多人,聊到JVM这一块,90%都会挂。

7、说一下Java类加载器的工作机制?类加载在那个区域进行的?

上面问题中说过了,这个类加载相关的肯定会问,表示你对一个类是怎么从.class文件到Class对象,再到实的过程,看看你熟悉多少

这些问题也可以从侧面反馈到,你对你每一行代码是怎么运行,会存在什么问题是否有所知晓。

8、说一下Java的线程模型?volatile了解吗?他的原理是什么?violate是线程安全的吗?为什么不是?

Java线程模型你得熟悉一下,volatile也得了解一下,有什么特性,可见性、防重排、原子性。这些也得去了解一下。

这个问题理论性比较强,背背面试题,基本上能搞定。

9、保证线程安全的解决方法有哪些?说一说读写锁吧,读写锁的读

这些都是理论性的,背背面试题就能解决,不是一定要使用过。自己下去好好准备一下就可以了

10、数据库的索引有哪几种?为什么要用B+树来做索引?组合索引和几个单个的索引有什么区别?数据库的大表查询优化了解吗?MVCC机制了解不?MVCC机制有什么问题?怎么去解决这个问题?MySQL 慢语句调优做过吗?说说你是怎么做的?

这个相当于是MySQL数据库的8连问,8个连环炮你能回答上来几个?基本上也都是平时多看看面经,背背面试题也能应对。

11、Redis了解吗?你说说怎么用Redis实现分布式锁?

这个问题,其实看起来简单,回答起来没那么简单的,

这里社交很多东西,不是简单的setnxLUA脚本就能解决的,涉及到Redis集群模式,涉及到业务超时等问题。面试官都是给你安排好的,这个得有些真材实料,背面试题只能应付比较肤浅的面试官,遇上认真点的面试官,那就得用自己的真材实料去回答了。

12、SpringBean的作用域,Spring MVCcontroller是线程安全的吗?怎么去保证线程安全呢?

这个问题,这里就没有再扯了,因为各大公众号,我的这个公众号之前也发过类似的文章,所以有空别小看公众号的重要性。只是在于积累,平时在车上、地铁上、工位上休息的时候,可以借助于一些琐碎的时间去看一些技术性的公文章,积累自己的认识。

总结

实话实说,上面90%的问题,我们都可以通过背面试题来解决,可能存在个别题需要自己真的去体会体验过才可以搞定。

但是个人始终认为:五年以内的工作经验,面试基本上可以通过背面试题来解决

标签:Java,HashMap,一下,美团,问题,能否,线程,JVM,上来
From: https://blog.51cto.com/u_11702014/6235763

相关文章

  • 美团面试题:慢SQL有遇到过吗?是怎么解决的?
    大家好,我是田维常,可以叫我老田,也可以叫我田哥。2017年的时候,我刚去上海,朋友内推我去美团面试,之前我也写过一个一篇文章,也是在美团面试中遇到的:美团面试题:Strings=newString("111")会创建几个对象?关于慢SQL,我和面试官扯了很久,面试官也是很谦虚的,总是点头,自己以为回答的还可以。......
  • Java程序员从阿里、京东、美团面试回来,这些面试题你会吗?(文末福利)
    hi大家好我是田哥今天,给大家分享一些面试干货。我们每次面试基本上都是超过一个小时的,面试官肯定会问很多问题,其实也不是需要我们全部能回答上来。但是,关键点如果回答不上来,就算你其他的回答的不错,也没用,最终offer还是不会给你的。好吧,话不多说,我们直接开始:自我介绍很多人觉得自......
  • cshtml和html的区别从语法和功能上来看
    https://www.lookxue.com/blog/o61302ve.htmlcshtml和html的区别:1.cshtml是一种混合式的文件,它将html、javascript和C#代码结合在一起,而html只是一种纯静态的文件;2.cshtml可以使用C#代码进行逻辑处理,而html不能;3.cshtml中可以使用Razor语法,而html中不能;4.cshtml可以使用@......
  • 竞争焦点转向数智底座 用友能否再引领
    本文转自犀牛财经作者邱燕娜 当前企业服务市场竞争的焦点转向了数智底座,老牌软件厂商所面临的竞争对手也远不止以往那些熟悉的面孔。在4月19日举办的用友BIP技术大会上,很多人都忍不住谈论华为MetaERP,因为第二天华为将宣布成功实现MetaERP研发和替换,用友们就要去华为参加MetaERP表......
  • 2021-2022年度美团科研合作评优结果发布
    美团科研合作致力于搭建美团技术团队与学术界合作的桥梁,让学术前沿落地应用,让真实场景支撑研究。至今,我们已与数十所知名高校及科研机构的学者,围绕人工智能、自动驾驶、运筹优化、大数据、信息基础设施等领域开展了百余项课题合作;并在相关领域国际会议、期刊发表数百篇论文,在国际顶......
  • 2023年美团科研合作课题公开征集启动
    美团科研合作依托丰富业务场景和真实产业问题,连接美团技术团队与学术界,搭建富有效率的产学研合作平台。过去四年,美团与国内外三十余所知名高校及科研机构,围绕人工智能、自动驾驶、运筹优化、大数据、信息基础设施等研究领域开展了百余项课题合作,在NeurIPS、ICML、CVPR、ACL、KDD......
  • 多场景多任务学习在美团到店餐饮推荐的实践
    总第556篇2023年第008篇美团到店餐饮算法团队在跨域迁移学习的长期实践中,基于多场景的业务背景,提出了分层信息抽取网络,提升了多场景多任务的建模效果。相关技术方案形成的学术论文已经被国际数据工程会议ICDE2023收录,本文详细阐述了多场景多任务学习的解决方案,希望能给从事相关方......
  • 鲁大师能否杀毒详情介绍
    小伙伴们有了电脑之后肯定都会要下载个杀毒软件来保护电脑,鲁大师名气响亮很多的用户就很好奇他是否可以杀毒呢?下面就一起来看看详细的介绍吧。鲁大师能否杀毒:答:不可以。1、鲁大百师是硬件检测和优化工具,是不具有杀毒功能的,建议使用正规度的杀毒软件来保护系统。2、现在主流的......
  • 2023-4-12美团测开一面
    自我介绍介绍工作绩效、测试平台的开发介绍一下预约挂号平台医院的源数据信息是自己录的吗后端有使用mysql吗整体的数据量redis项目中的作用springcloud是怎么使用的后台有几个微服务java中concurrentHashMap什么时候进行红黑树扩树线程池的固定参数threadLoca......
  • 2023-4-13美团测开二面
    1.自我介绍2.写项目的背景是什么3.为什么使用SpringCloud,主要适用于哪些功能4.为什么用MongoDB5.MongoDB和Redis哪个更快6.拷贝数组有几种方式,哪种方式效率更高效率从高到低:System.arraycopy、clone、(Arrays.copyOf、Arrays.copyOfRange)、for循环。7.Integ......