被面试官一刀砍在了大动脉

基础 专栏收录该内容
2 篇文章 0 订阅

被面试官一刀砍在了大动脉是什么感觉

哑巴吃黄连
泥菩萨过江
孔夫子搬家

接一个电话面试,前面该介绍的也介绍了,来到了面试官提问我的环节:
面试官:你了解hashmap吗?
我:了解一些,简单实用过
面试官:知道hashmap数据结构吗?
我:…
面试官:知道哈希表长度超过多少时,变为红黑树吗?
我:…(心想,没用过,别问了)
(真是给我虐的体无完肤呀,一刀想把我砍死)
面试官:对spring了解多少
我:Spring : 春天 —>给软件行业带来了春天

2002年,Rod Jahnson首次推出了Spring框架雏形interface21框架。

2004年3月24日,Spring框架以interface21框架为基础,经过重新设计,发布了1.0正式版。

很难想象Rod Johnson的学历 , 他是悉尼大学的博士,然而他的专业不是计算机,而是音乐学。

Spring理念 : 使现有技术更加实用 . 本身就是一个大杂烩 , 整合现有的框架技术
面试官:spring的优点是什么?
1、Spring是一个开源免费的框架 , 容器 .

2、Spring是一个轻量级的框架 , 非侵入式的 .

3、控制反转 IoC , 面向切面 Aop

4、对事物的支持 , 对框架的支持

一句话概括:

Spring是一个轻量级的控制反转(IoC)和面向切面(AOP)的容器(框架)。
面试官:spring的组成?
我:(本来以为会轻松挡住这一刺杀,突入起来的反手也让我措手不及)Spring 框架是一个分层架构,由 7 个定义良好的模块组成。Spring 模块构建在核心容器之上,核心容器定义了创建、配置和管理 bean 的方式 。
面试官:嗯,spring这块回答的不错,咱聊聊jvm吧?
我:(这块我还不反手给你一刀?)Java程序的跨平台特性主要是指字节码文件可以在任何具有Java虚拟机的计算机或者电子设备上运行,Java虚拟机中的Java解释器负责将字节码文件解释成为特定的机器码进行运行。
面试官:jvm怎么跨平台的?
我:跨平台的意思就是Java程序,在一次编译后,在这些平台上都可以运行。有其他编程语言基础的朋友应该知道,其他语言没有这个特性,例如c语言在Windows上编译的文件,放到Linux系统上运行,可能就有不兼容问题。(哎!能躲就躲一刀吧,躲不了挨了,目前生命值70%)
面试官:回答的不是挺好呀,什么是类的加载?
我:类的加载指的是将类的.class文件中的二进制数据读入到内存中,将其放在运行时数据区的方法区内,然后在堆区创建一个java.lang.Class对象,用来封装类在方法区内的数据结构。类的加载的最终产品是位于堆区中的Class对象,Class对象封装了类在方法区内的数据结构,并且向Java程序员提供了访问方法区内的数据结构的接口。
面试官:描述一下JVM加载class文件的原理机制?
我:…(目前生命值50%)
面试官:java代码怎么运行的?
我:放服务器上跑?(别笑,我自己减5%生命值)
面试官:不是问你这个,在想想?
我:Java代码被编译为Java字节码,在Java虚拟机上运行。
Java虚拟机将运行时内存区域划分为五个部分,分别为方法区、堆、PC寄存器、Java方法栈 和 本地方法栈。Java程序编译而成的 class文件,需要先加载至方法区中,方能在Java虚拟机中运行。
面试官:类的实例化顺序,比如父类静态数据,构造函数,字段,子类静态数据,构造函数,字段,他们的执行顺序
我:…(我是谁,我在哪)
面试官:JVM垃圾回收机制,何时触发MinorGC等操作?
我:…(我自己减完吧0%)

到此面试问题结束,本来想着学习了这么长时间的jvm,怎么也能反刀面试官一下,最后被面试砍的惨不忍睹。看到这么一句话:真正的强者,不是没有眼泪,而是含着眼泪继续奔跑。我…(让我遇到看我扎不扎你-.-,我就是面试一个中级程序员,把我吊起来拿棍子打)

  • 0
    点赞
  • 0
    评论
  • 0
    收藏
  • 一键三连
    一键三连
  • 扫一扫,分享海报

©️2021 CSDN 皮肤主题: 创作都市 设计师:CSDN官方博客 返回首页
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、C币套餐、付费专栏及课程。

余额充值