V2EX = way to explore
V2EX 是一个关于分享和探索的地方
现在注册
已注册用户请  登录
hakunamatata11
V2EX  ›  推广

阿里面试官分享:我遇到过的那些质量很高的 Java 面试

  •  
  •   hakunamatata11 · 2021-03-09 10:02:38 +08:00 · 857 次点击
    这是一个创建于 1358 天前的主题,其中的信息可能已经有所发展或是发生改变。

    我在所谓的该枪毙的年龄 35+入职了阿里 P8,从业十余年从未离开过一线。同时,作为大厂的认证面试官,我在实际招聘中见过各类候选人,他们的失败和成功经历都可以给你们一些参考。

    分享一些我在面试中考察过的面试题,关于详细解析,也可以移步我主讲的《 Java 高级工程师》免费试听

    Java 后端 3 面,本科校招进来的,挺优秀的小伙子。

    JDK 和 JRE 有什么区别?

    答:具体来说 JDK 其实包含了 JRE,同时还包含了编译 Java 源码的编译器 Javac,还包含了很多 Java 程序调试和分析的工具。简单来说:如果你需要运行 Java 程序,只需安装 JRE 就可以了,如果你需要编写 Java 程序,需要安装 JDK 。

    再问:除了 javac 你还了解些什么命令行工具,它们的用途是什么?

    Jcmd:综合工具

    jps:虚拟机进程状况工具

    jinfo jstat:虚拟机统计信息监视工具

    jinfo:Java 配置信息工具

    jmap:Java 内存映像工具

    jhat:虚拟机堆转储快照分析工具

    jstack:Java 堆栈跟踪工具

    追问:用过 jstat 吗?你了解哪些参数?

    ……

    其实这些问题单独拎出来并不难,主要是要对技术栈和原理有深入的理解,成体系、成架构,在面对面试官的层层深入盘问才能有条不紊的回答。

    到这个程度,差不多就能过了。

    Java 二面,工作 3 年的老兵,技术不是很扎实

    这位小哥答得不是很好,我直接给大家放“参考答案”。

    问:== 和 equals 的区别是什么?

    答案要点:两个方法都是比较等价性。它们的区别要从“基本类型”和“引用类型”来看,作为基本类型来说,它们比较的都是值,作为引用类型——对象来说,它们比较的是双方是否是同一个对象。

    考察点:基本类型&引用类型

    基本类型:比较的是值是否相同

    引用类型:比较的是引用是否相同

    equals()的原生实现可以直接的定义它们之间的关系:

    加分 Tips:

    当然,我们可以通过重载 Oblect 中的 equals 方法来实现自定义的等价计算方法。比如在 String 类型中,由于源码中重新实现了该方法,所以会产生下面的结果:

    Tips:用字符串常量实例化的 String 的内容其实是保留在常量区

    String x = "string";

    String y = "string";

    x==y ——> true

    引用的都是常量区的同一个数据项,所以有上面的结果

    考察点:equals()的概念

    实际要求:平时对源码的深挖意识即技术钻研和批判性思维

    上面这些题目有这样的特点:

    1 、都是教科书级的题目

    2 、都是工程实践中常用的

    3 、都是习以为常,不容易去主动深究的

    考察目的:

    1 、基础知识的扎实程度

    2 、候选人对技术的热情

    更多 Java 面试知识点和考察方式,我在《 Java 高级工程师 P6+》的讲座中讲得很清楚了,感兴趣的同学可以点击免费试听体验一下。

    愿你成为一个合格的 Java 工程师~

    目前尚无回复
    关于   ·   帮助文档   ·   博客   ·   API   ·   FAQ   ·   实用小工具   ·   2793 人在线   最高记录 6679   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 22ms · UTC 00:22 · PVG 08:22 · LAX 16:22 · JFK 19:22
    Developed with CodeLauncher
    ♥ Do have faith in what you're doing.