记一次阿里巴巴电话面试题

2023-10-31

前几天投了阿里巴巴校招简历,今天晚上突然来了阿里的面试电话,有点紧张又有点激动,面试的问题问的挺全面,但是有些准备不足,因此回答的并不算太满意,现在整理一下分享给大家,希望进阿里的小伙伴可以来踩踩。

1.自我介绍(打电话时我刚吃完饭,上来就介绍自己,简单的介绍自己学的专业,以后的发展方向和目标,在学校参加过实验室并参加比赛获得过荣誉),我准备的仓促,下次吸取教训。

2.实验室参加的项目主要做了些什么,用了什么技术?

   这个有过项目实战经历的自己总结吧。

3.说说java内存模型?

java内存模型也叫JMM,由工作内存和主存构成,主存用来存储数据,工作内存再程序读取数据时将主存中要读取的数据copy一份到工作内存,然后程序读取数据进行运算。

我在说JMM的时候讲了一下计算机的内存模型,计算机的cpu运算速度很快,计算机内存存储cpu运算需要的数据,但是cpu直接从内存读取数据太慢,效率太低,所以cpu内置了高速缓存器Cache,cpu需要读取数据时,将内存中数据copy一份到Cache中,然后cpu从Cache读取数据,大大提高了执行效率和速度。

4.我的项目用到了多线程,所以问到了线程的问题,首先问的线程安全机制怎样实现的?

   主要回答了两个关键字,一个synchronized关键字修饰方法或者语句块实现线程的同步,还有volatile关键字修饰共享变量。

5.说说volatile关键字可见性的实现原理?

volatile关键字主要功能是为了共享变量的在线程间实现可见性,我们在多线程并发编程中,每个线程读取的变量都是存贮在虚拟机的主存中,这里要说一下java虚拟机的内存模型,java内存模型主要有部分组成,一个是主存,用来存贮数据,类似计算机的内存,一个是工作内存,类似cpu中的高速缓存Cache,线程读取数据需要将主存的数据copy一份存储到工作内存,然后线程再从工作内存读取数据进行运算,之后再将运算结果返回工作内存,工作内存再返回到主存。那么存在这样一种情况,一个线程刚进行完数据的运算a++,还没有返回运算结果,这是另外一个线程抢到cpu进行运行,并且一直完成了对数据的读取和运算并且将结果返回到主存的操作,这样主存中的数据就增加了一次,这时第一个线程接着运行,将执行结果返回到主存,但是返回值和第二个线程是一样的,这样本来共享变量应该增加两次,可是只增加了一次,就会出现问题,这就是缓存不一致问题,而使用volatile关键字修饰的共享变量就能解决这个问题,被修饰的共享变量一旦被修改,修改结果直接存储到主存中,其他线程再次读取这个变量发现被volatile关键字修饰,会导致工作内存中用来缓存该变量的变量行失效,直接从主存中读取变量的值。

可以参考这篇文章:https://blog.csdn.net/eff666/article/details/67640648

 

6.说说集合框架

这个这要讲一下集合框架的构成就行了。

 

7.你经常用哪个集合类?

我说的ArrayList,他说这个线程安全吗?我说不安全,安全的只有Vector,但是他又问我除了Vector还有其他的集合类安全吗?我真想不起来了,查了资料有Stack,继承自Vector。但是我实在没想起来,只能说我还知道Map集合中有一个hashtable类线程安全。。。

 

8.你用的什么java版本?

我说的jdk8,我一听就想坏了,我对jdk8的新特性不知道啊,果然他又问我jdk8比jdk7新增了哪些新特性?我只能说不知道。

 

9.平常用过什么数据库?除了mysql和oracle外你还知道什么数据库?

我说我用mysql,oracle没用过但是学过,除此之外还看过redis,然后说了一下redis的存储原理。

 

10.说说mysql和oracle两者区别?

说实话,不知道,但是还是说mysql适合轻量级,oracle适用于大型的项目,mysql开源免费,oracle收费,但是oracle出现问题能够问客服,让别人解决问题,mysql都是小项目用的,出问题自己解决。。。。说的很勉强。

 

11.java方向做过什么项目?印象最深的是哪个?

基本每个技术阶段都会做一个项目,我说了一个用springboot做的项目,并提前告诉他我目前不知道这些框架原理如何实现的!免得问我我也不会,他就问我使用了什么技术让我印象最深刻,为什么这个项目用了springboot框架。我只能照实说我第一次用mybatis技术,并被它深深的高效快捷的功能所吸引,用它实现了底层数据库的操作,并且能够节省很大的代码量,能够自动生成对底层数据库的操作代码,但是只限于单表操作,又说了用mybatis如何处理表与表之间的关系。

 

12.spring了解多少?

我说了spring的面相切面和依赖注入,原理没说,就过去了。

 

13.说说类的加载机制。

我忘了。。。

可以参考这篇文章:https://www.cnblogs.com/ITtangtang/p/3978102.html

14.读过什么类型的书?

最近正好在读java并发编程和深入理解java虚拟机,说了一下书中的内容。

 

15.有没有想过考研?

我坚定的说没有。

我也不知道为啥问这个。

 

16.有什么要问他的?

我主要问了一些学习的方法。

 

 

大概就这么多内容,面试了50分钟,以上解答若有问题,欢迎指出!

转载于:https://www.cnblogs.com/zzuli/p/9398894.html

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

记一次阿里巴巴电话面试题 的相关文章

  • 算法设计与分析期末复习题

    算法分析与设计 期末复习题 一 选择题 1 应用Johnson法则的流水作业调度采用的算法是 D A 贪心算法 B 分支限界法 C 分治法 D 动态规划算法 2 Hanoi塔问题如下图所示 现要求将塔座A上的的所有圆盘移到塔座B上 并仍按同
  • Python3,5行代码,生成自动排序动图,这操作不比Excel香?

    5行代码生成自动排序动图 1 引言 2 代码实战 2 1 pynimate介绍 2 2 pynimate安装 2 3 代码示例 3 总结 1 引言 小屌丝 鱼哥 听说你的excel段位又提升了 小鱼 你这是疑问的语气 小屌丝 没有 吧 小鱼
  • sql 语法总结

    select case when ThamesWorld then 9999999 如果为空 替换成对应的数组 when CHARINDEX ThamesWorld gt 0 then LEFT ThamesWorld charindex
  • Vue报错: did you register the component correctly? For .., make sure to provide the "name" option(已解决)

    问题 did you register the component correctly For recursive components make sure to provid the name option 在做项目的时候 引入其他组件时
  • 【牛客刷题专栏】0x30:JZ38 字符串的排列(C语言编程题)

    前言 个人推荐在牛客网刷题 点击可以跳转 它登陆后会保存刷题记录进度 重新登录时写过的题目代码不会丢失 个人刷题练习系列专栏 个人CSDN牛客刷题专栏 题目来自 牛客 题库 在线编程 剑指offer 目录 前言 问题描述 解法思路 代码结果
  • Colaboratory使用Tensorboard

    Colaboratory是一个好用的工具 那么自然也会提供了扩展支持 添加Tensorboard的callback 然后使用tensorboard的命令启动生成的文件 load ext tensorboard tensorboard log
  • Python-类中的变量和方法

    类对象是一组相关的数据信息 属性 以及针对这组数据信息的操作 函数 的集合 实例属性 用self修饰的属性为实例属性 这些属性通常是某个对象的属性 如一个人的名字 class Student def init self name self
  • 完美解决Typora行距问题

    文章目录 一 步骤 1 启动开发者工具 2 通过开发者工具找到需要修改的css文件位置 3 将这个位置的数字直接修改为0 总结 一 步骤 1 启动开发者工具 2 通过开发者工具找到需要修改的css文件位置 3 将这个位置的数字直接修改为0
  • oracle使用rowid和for update修改数据的区别

    在oracle进行测试数据修改时 有时为了简单方便 不想使用update语句来进行修改 于是可以使用rowid和for update来进行数据操作 sql例子如下 select s rowid from student select fro
  • 通过深度学习偏微分方程模型估计剩余使用寿命:使用潜变量的 退化的动力学解释框架/PINN 在发动机寿命预测的应用 文献总结和内容概要

    PINN 在发动机寿命预测的应用 文献总结 内容概要 一 引言 二 物理信息神经网络PINN 三 本文所提出的框架 3 1当前DL PHM所面临的三个问题 3 2 本文相应的解决方案 3 3 DNN框架 3 4 所提框架的优势 3 4 1网
  • 1、Canopen 轻松入门

    Canopen 轻松入门 笔记 1 Canopen在ISO层级中的位置 2 CANopen 的预定义报文 ID 分类 2 1 网络管理 NMT 与特殊协议 Special protocols 报文 ID 分类 2 2 过程数据对象 PDO
  • Unity SteamVR 2.x UGUI射线交互 +物品射线点击+物品抓起(超级简单)

    刚开始先查看了其他道友的方案 1 Unity使用SteamVR2 0实现基本功能 瞬移 抓取物品 射线点击 UI交互等 贪小心的博客 CSDN博客 unity steam vr 2 Steam VR 2 0 5 射线操作UGUI 射线点击物
  • gcc/g++搜索路径

    一 查看gcc g 默认include路径 1 gcc print prog name cc1plus v 2 g print prog name cc1plus v 3 echo main gcc E v 二 include搜索路径 1
  • 论文笔记:Mind the Gap An Experimental Evaluation of Imputation ofMissing Values Techniques in TimeSeries

    pVLDB 2020 1 abstract intro 这篇论文横向比较了12种 time series imputation的方法 作者声称这是第一篇深入讨论这些模型的准确度 效率和参数化 由于不同的方法使用的编程语言不同 作者用C 重新
  • 786. 第k个数

    文章目录 Question Ideas Code Question 给定一个长度为 n 的整数数列 以及一个整数 k 请用快速选择算法求出数列从小到大排序后的第 k 个数 输入格式 第一行包含两个整数 n 和 k 第二行包含 n 个整数 所
  • Jetbrains开发者日见闻(三)之Kotlin1.3新特性(inline class篇)

    简述 上接上篇文章 我们深入分析了Kotlin1 3版本中的Contract契约的内容 那么这篇文章将会继续把Kotlin1 3新特性研究完毕 这篇文章还有个非常重要的点就是inline class 内联类 关于内联类的知识除了这篇文章会有
  • [PPPOE]报文交互分析

    1 简介 PPPoE PPP Over Ethernet 协议是在点到点链路上承载网络层数据包的一种链路层协议 由于它能够提供用户验证 易于扩充 并且支持同 异步通信 因而获得广泛应用 PPPoE主要协议标准 RFC2516 图 PPPOE
  • 字母顺序排序

    这周做题的时候遇到了一些困难 当时一直程序并没有报错但就是不知道哪错了 后来通过问同学 终于知道哪错了 其实有的时候哪怕你多加了一个等于号 而以至于程序达不到你需要的效果 也是有的 所以一定不要让数组运行时少一次 否则有可能到后面就出错了
  • python自动化:系统凭据的获取与添加

    在自动化流程开发中 我们经常会遇到输入帐号 密码的情况 帐号明文还可以 但是密码不想展示给他人 但是不想自己去手动输入怎么办 基于以上情况我们可以使用windows自带的凭据管理器进行密码存储 其实我们经常用的git也存储在这里 首先搜索
  • shader里的uv是什么

    shader里的uv是什么 前言 先看一段shadertoy大牛写的代码 vec3 getPixel in vec2 coord float time vec2 uv coord iResolution xy uv uv 2 0 1 0 u

随机推荐

  • 考研数学基础30讲

    基础30讲 第1讲 高等数学预备知识 一 函数的概念与特性 1 函数 2 反函数 3 复合函数 4 函数的四种特性 第1讲 高等数学预备知识 一 函数的概念与特性 1 函数 设x与y是两个变量 D是一个给定的数集 若对于每个值x in D
  • JavaScript中的设计原则

    文章目录 一 单一职责原则 1 运用了单一职责 SRP 的设计模式 2 何时应该分离职责 3 优缺点 二 最少知识原则 1 运用了最少知识原则的设计模式 三 开放 封闭原则 1 运用了开放 封闭原则的设计模式 2 接受第一次愚弄 三 接口和
  • 1010 Radix (25 分)

    题目 题目链接 题解 二分 数学 先说几点注意事项 开 LL 最高进制不是35 可以更高 枚举可能的进制时存在爆LL的情况 整体思路 先计算出知道进制的那个数对应的十进制数 二分进制 找到某个进制使得另一个数对应的十进制数与已知的十进制数相
  • 异步信号的去抖电路及同步电路

    异步输入的问题 如果电路有异步信号 就可能使电路进入亚稳态 因为异步信号可能处于时钟信号建立时间以内 即是输出不确定的状态 去抖电路 异步信号如果是外部的机械输入 比如键盘等 输入信号就会产生机械性地振荡 因此首先需要对此类异步信号加一个去
  • 计算机网络-网络层

    网络层 1 前言 2 网络层的作用 3 网络层数据交换 4 网络层协议及报文格式 5 ARP与RARP 6 国际控制报文协议ICMP 1 前言 网络层介于传输层和数据链路层之间 其主要作用是实现两个网络系统之间的数据透明传送 具体包括路由选
  • openpyxl空值填充、分列、单元格百分比格式显示

    还是之前的日报 处理一个xlsx文件 需求描述如下 不多说 上代码 import openpyxl as op import time lxwb i1 op load workbook 文件路径 5GR I1 15个对象属性空值核对 s x
  • 【计量统计】计量经济学导论常见公式原理及习题解答

    关键词 Stata 计量经济学 习题解答 一 简单二元回归模型 y b 0 b 1
  • 电脑计算机推荐笔记本电脑,十佳办公笔记本电脑排名,性价比高的笔记本电脑推荐...

    商务人士人手必备一台办公笔记本 这样在需要的时候 随时都能办公 当然选择笔记本最重要的是性能好 要方便携带 这里有十大最优质的办公笔记本推荐 足够高的性价比 方便你随身携带随时办公 成为一位优秀的商务人士 1 华硕灵耀S4300FN 这款笔
  • 云孚科技受邀参加第二十二届中国计算语言学大会(CCL 2023)

    云孚科技 CCL 2023 中国计算语言学大会 2023年8月3日 8月6日 第二十二届中国计算语言学大会 CCL 2023 在哈尔滨市成功举行 本次大会由中国中文信息学会主办 哈尔滨工业大学承办 涵盖计算语言学领域最新技术和动向 为与会专
  • 中小型企业网络规划设计方案_实战:企业网络系统规划与设计与事项

    某大中型企业 有多个部门 财务部 人事部 销售部 工程部 同部门之间采用二层交换网络相连 不同部门之间采用VLAN路由方式互访 企业有一台内部web服务器 承载着内部网站 方便员工了解公司的即时信息 局域网路由器启用多种路由协议 静态路由
  • 禁止缩放meta标签

    转载于 https www cnblogs com LiuJL p 10977907 html
  • [1149]RabbitMQ CPU 占用过高优化

    文章目录 背景 问题排查 error logger 问题 erlang 调度器问题 总结 背景 服务器上搭建的 RabbitMQ 在并发量不是很大的情况下 CPU 占用竟然达到了 40 左右 这种情况第一感觉是不科学的 推测应该是使用不当或
  • 电脑上编辑文件打字时页面乱跳解决方法

    问题描述 在网页上编写文章 执行复制 粘贴或者换行等操作时 会出现页面滑动的情况 而光标在编辑的文案中的位置却没变 原因分析 设置了鼠标灵敏度 解决方案 步骤1 打开控制面板 步骤2 在右上方输入鼠标或点击硬件与声音 点击鼠标 步骤3 在鼠
  • 离散数学4_第5章关系与函数__关系矩阵

    关系矩阵的 定义 注意这里 m n阶的矩阵 是指m 行 n列的 矩阵 如果行 列相等 称为方阵
  • textarea 光标位置相关

    textarea cursor postion 兼容 i8 通过 本案例的对于文本域的处理以后就可以 扩展使用了 功能 本文主要的内容是介绍了 在文本域中 光标的位置获取 被选中文本的位置获取 start end 以及在光标位置插入文本 或
  • python寻找相似用户_基于用户相似性的协同过滤——Python实现

    coding utf 8 importrandom mathfrom operator importitemgetterclassUserBasedCF def init self trainDataFile None testDataFi
  • 【Unity问题&错误】list问题

    error CS0305 Using the generic type System Collections Generic List
  • ctfshow web入门 代码审计

    文章目录 web301 web302 web303 web304 web305 web306 web307 web308 web309 web310 web301 下载源码后在checklogin php发现问题代码
  • ChatGPT未来会拥有自我情感和思维吗?

    ChatGPT是一种基于人工智能的聊天机器人 它可以模拟人类的对话 并且可以回答各种问题 目前 ChatGPT已经非常先进 但是它是否会拥有自我情感和思维呢 首先 我们需要明确一点 ChatGPT是一种基于机器学习的算法 它的行为是由程序员
  • 记一次阿里巴巴电话面试题

    前几天投了阿里巴巴校招简历 今天晚上突然来了阿里的面试电话 有点紧张又有点激动 面试的问题问的挺全面 但是有些准备不足 因此回答的并不算太满意 现在整理一下分享给大家 希望进阿里的小伙伴可以来踩踩 1 自我介绍 打电话时我刚吃完饭 上来就介