当前位置: 代码迷 >> 综合 >> interview experience
  详细解决方案

interview experience

热度:10   发布时间:2023-12-13 16:10:37.0

俗话说:“不想当将军的士兵不是好士兵”。近期由于产品版本迭代速度比较慢,加之外界种种传闻,所以陆陆续续在约一些面试,检验下自己技术水平。
在一次面试中,偶遇一朋友,他把面试比喻成一次次的bug修复。作为一名技术人员,每个知识点都有待提高的地方,通过和面试官交流,及时找到自己的bug,然后快速的查阅相关文档打补丁,是一个非常不错的提高方式。下面我把和面试官们的交流体会分享一下:
面试开篇,有的面试官以项目介绍为引子,展开技术讨论;有的面试官针对简历上技能介绍,展示技术讨论。由于每位同学的项目介绍不同,我们这里只介绍面试官面试过程中经常问到的一些知识点。

  1. java基础篇
    -为什么要发明泛型?
    -抽象类和接口有什么不同?
    -hashmap的数据结构
    -equals方法
    -如何实现有序集合?
    -LinkedHashMap如何实现有序存储?
    -TreeMap实现原理?
    -aop实现原理?
    -final关键字
    -32位jdk和64位jdk存储java对象有什么不同?
  2. java内存模型
    -介绍JVM模型;
    -方法区、虚拟机栈、本地方法栈、程序计数器、java堆哪些是线程私有的?
    -垃圾回收算法;
  3. Java并发编程
    -thread中wait和sleep哪个方法释放锁?
    -threadlocal实现原理;
    -thread.join方法介绍;
    -synchronized介绍;
    -CurrentHashMap使用的什么锁?
    -synchronized和rentrantlock区别?
    -CAS(Compare And Sweep)原理
    -AQS(AbstractQueuedSynchronizer)原理
    -线程池如何实现的?
  4. 数据结构
    -数组和链表的区别?
    -树和图的关系?
  5. 算法
    -生产者、消费者实现
    -冒泡排序
    -单例模式
    -求一个二叉树深度的算法
    -打印菱形图案
    -计算算法实现的时间复杂度
  6. mysql
    -mysql存储引擎对比;
    -mysql事务如何实现的?
    -B树和B+树区别?
    -mysql索引如何使用?
    -mysql和elasticsearch区别?
    -sql优化方案?
  7. spring
    -spring如何加载类的?
    -spring mvc实现原理?
    -spring事务传播特性?
  8. 综合
    -zookpeeper如何查找服务?
    -elasticsearch如何分片存储?
    -什么是倒排索引?
    -tcp三次握手介绍
    -网站访问流程
    -QPS多少?
    经过一轮轮的面试,我把java基础知识重新巩固了一下。以前在看《深入理解java虚拟机》和《java并发编程的艺术》时,发现好多知识点看了以后没什么印象,但面试官时不时会问到里面的知识点,现在回顾的时候,理解更加透彻。而且正在培养看源码的能力,以前只知道这么做可以实现,但实现的底层原理尚未了解,更别说如何在底层上改造。
    痛并快乐着,虽然面试会被虐,但只有被虐,才知道自己哪些地方可以提高。