阿里二面,面试官:说说 Java CAS 原理?
在并发编程中我们都知道i++操作是非线程安全的,这是因为 i++操作不是原子操作。如何保证原子性呢?常用的方法就是加锁。在Java语言中可以使用 Synchronized和CAS实现加锁效果。Synchronized是悲观锁,线程开始执行第一步就是获取锁,一旦获得锁,其他的线程进入后就会阻塞等待锁。如果不好理解,举个生活中的例子:一个人进入厕所后首先把门锁上(获取锁),然后开始上厕所,这个时候有....

阿里面试这样问:redis 为什么把简单的字符串设计成 SDS?
2021开工第一天,就有小伙伴私信我,还给我分享了一道他面阿里的redis题(这家伙绝比已经拿到年终奖了),我看了以后觉得挺有意思,题目很简单,是那种典型的似懂非懂,常常容易被大家忽略的问题。这里整理出来分享一下,顺便自己巩固一下基础,希望对正在面试和想要面试的兄弟有点帮助。题目大致是这样的面试官:了解redis的String数据结构底层实现嘛?铁子:当然知道,是基于SDS实现的面试官:redi....

2020总结,迎战2021,大三专科转Java挑战阿里大厂面试
前言文章标题我有点夸大,但是我要声明:不管最后能不能去阿里,如果我们的个人技术能力能达到阿里的面试水准,我相信大多数公司都会给你发offer。所以阿里面试是我的一个目标与进步的动力。所以这也是我为什么从写一些项目坑转到写一些Java的类,包,库的一些底层实现原理以及面试的原因。文章最后我会写一些面试的技术思路,我知道关于面试一直都是热门话题,有非常多的人写甚至抄袭,不过我保证我都是原创,我相信聪....

4 年 Java 经验,阿里网易拼多多面试总结、心得体会
目录前言个人情况面试情况4 年经验应该具备哪些技能专业技能方面项目方面面试常见形式面试内容1、项目2、场景题3、专业技能集合多线程、锁网络Spring、MybatisMySQLJVMKafkaRedisZookeeper分布式4、Hr 面一些经验心得前言由于个人发展的原因和工作上的变动,产生了想出来看看机会的想法。经过了一段时间的准备,5 月下旬开始出来面试,面到了 7 月上旬,如愿拿到了自己心....
我用 DCL 写出了单例模式,结果阿里面试官不满意!
前言单例模式可以说是设计模式中最简单和最基础的一种设计模式了,哪怕是一个初级开发,在被问到使用过哪些设计模式的时候,估计多数会说单例模式。但是你认为这么基本的”单例模式“真的就那么简单吗?或许你会反问:「一个简单的单例模式该是咋样的?」哈哈,话不多说,让我们一起拭目以待,坚持看完,相信你一定会有收获!饿汉式饿汉式是最常见的也是最不需要考虑太多的单例模式,因为他不存在线程安全问题,饿汉式也就是在类....

阿里经典面向对象面试题升级版(推荐看)
前言此题目为几年前阿里首创,此题一出就制造了面试中"惨案"。该题有可能你能说出结果,但你未必能说清楚原因。我查阅了部分关于此题的解析,好多就是迷迷糊糊就给讲完了,根本没抓住问题核心,因此阿包也献上一篇自己的理解,希望能为正确一方添加一票,这样大家搜索到正确频率又能提高一点。下面是原版阿里真题和解析:传送门: 阿里题目链接题目分析该题目涉及到的知识非常多,比如: 作用域、预编译、原型与原型链、ne....

【阿里面试】C++多态和虚函数
一、C++的面试常考点阿里虽然是国内Java的第一大厂但是并非所有的业务都是由Java支撑,很多服务和中下层的存储,计算,网络服务,大规模的分布式任务都是由C++编写。在阿里所有部门当中对C++考察最深的可能就是阿里云。阿里对C++的常考点:1.STL 容器相关实现2.C++新特性的了解3.多态和虚函数的实现4.指针的使用二、阿里真题2.1 现在假设有一个编译好的C++程序,编译没有错误,但是运....

why哥被阿里一道基础面试题给干懵了,一气之下写出万字长文。 (6)
就看第一句我圈起来的话。后面的描述都是围绕着这句话在展开描述。Java 虚拟机的 tableswitch 和 lookupswitch 指令,只支持 int 类型。好,那我现在来问你:switch 语句的表达式可以是哪些类型的值?注意我说的是表达式。这个答案在《Java 语言规范》里面也写着的:你看,8 种基本类型已经支持了char、byte、short、int 这4 种,而这 4 种都是可以转....

why哥被阿里一道基础面试题给干懵了,一气之下写出万字长文。 (5)
怎么定义稀疏所以,在 switch 里面,我们怎么定义稀疏呢?文档中没有写。文档里没有写的,都在源码里面。于是我搞了个 openJDK,我倒要看看源码里面到底什么是 TMD 稀疏。经过一番探索,找到了这个方法:com.sun.tools.javac.jvm.Gen#visitSwitch这里我不做源码解读,我只是想单纯的知道源码里面到底什么 TMD 是 TMD 稀疏。断点时候时候各个参数如下:标....

why哥被阿里一道基础面试题给干懵了,一气之下写出万字长文。 (4)
假设这个时候 switch 表达式的值是 3,我直接根据偏移量 3,就可以取到 3 对应的接下来需要执行的地方 69,然后接着执行 default 语句了:所以,0,1,2 不叫稀疏,0,2,4 也不叫稀疏。它们都不 sparse ,缺一点点的情况下,我们可以补位。所以现在你理解官网上的这句话了吗:当 switch 语句里面 case 的值比较“稀疏”(sparse)的时候,用 tableswi....

本页面内关键词为智能算法引擎基于机器学习所生成,如有任何问题,可在页面下方点击"联系我们"与我们沟通。
面试更多阿里相关
Java面试那些事儿
手把手带您学习Java,开启编程之路。
+关注