蚂蚁金服面试总结

蚂蚁金服一面

蚂蚁金服一面是电话面试,面试官首先介绍了下他们部门(金融风险部门)的情况,我表达了堆他们部门业务的理解,然后就进入正题了。
  1. 自我介绍下自己(感觉这是个常规的电话面试套路)
    个人教育情况
    工作经历的几家公司和所在的部门
    现在所在的职位和公司
    因为我校招是以测试的身份进入去哪儿网,并做测试做了一年半的时间,面试官对这个情况也深入的了解了下原因和时长
  2. 介绍下感觉比较有成就感的项目
    首先我介绍了下项目背景,很明显,面试官并不感兴趣,然后直接问我
  3. 介绍下你在这个项目中最有成就感的三点
    压力很大的情况下完成了任务(感觉没啥实质的好处)
    做了相关的辅助工具(感觉不是面试官关注的东西)
    配置了完善的策略保证上线的安全
    面试官听了之后并没有很好的反馈,我细想了下,这三点确实没有突出的地方,实在不应该这么总结,应该把性能,框架改造,和解决的难题说一下
  4. 面试官感觉项目没啥特色,就开始面基础了,Object的方法有哪些
    hashcode
    equals
    toString
    wait
    notify
    finalize
    getClass
    clone(没说出来)
  5. finalize方法是做什么的?
    这里我没有实质的说出来finalize的用途是做什么的,我大致描述了finalize的特点:在对象被Gc之前,必然会调用finalize方法,使用finalize方法可以有一次拯救自己的机会,可以对该对象重新引用
  6. 见过finalize这么做的吗?
    没有,实际项目中基本不会对finalize重写,也不建议重写,(这块对finalize的使用场景不太清楚)
  7. equals方法和hashcode方法为什么需要同时重写
    在我们hashMap和hashSet的数据结构中,会先对对象进行hashCode码的判断,然后在根据equals方法的判断是否是相同对象
  8. hashcode一样,equals相等吗?
    不一定
  9. equals相等,hashcode相同吗?
    相同
  10. 使用过db吧,说下db中的乐观锁和悲观锁
    我一下蒙了,db中的乐观锁和悲观锁?这个是要问隔离级别吗?然后脑子就不转圈了,反问了下,没太明白
  11. 那你说下什么是乐观锁,什么是悲观锁
    乐观锁:在使用之前认为该值时不会被改动的,业务执行之后修改值的时候进行比对
    悲观锁:在使用之前认为该值会被改动,使用之前先对其进行加锁
  12. 说下怎么在db中使用乐观锁和悲观锁,假设db中有个库存的列,需要进行扣减,分别使用乐观锁和悲观锁实现一下
    这块我大脑蒙了,没说出来,面试结束之后,一下反应过来了
    乐观锁实现:在db中增加version字段,读数据把version读出来,修改后对比version是否相同,相同情况下对库存修改,并对version加1
    悲观锁实现:这块可以设置新字段标识行锁,先更新行锁锁住该行,然后在读出数据修改数值,把行锁解除掉(感觉会引申出如果宕机了锁没有清掉产生的一直被锁的问题)
  13. 算法题,两个有序数组,合并
    归并,嘴说代码,这个也是少见
  14. 请问你有意愿加入质检组吗?
    这块我绝对是脑子出现了问题,我以为他说的质检组是测试,其实他们组叫质检组,我说我不会在锁质检工作,我转开发就不会再做测试的工作,哈哈哈

相关问题解答:https://www.jianshu.com/p/b2c2ebf30ea0

你可能感兴趣的:(面试)