2015年阿里巴巴蚂蚁金服校招JAVA研发工程师内推电话面试

  没想到阿里校招如此之早,虽然早已进入复习备战状态,但还是感觉有些措手不及。。。找了个在蚂蚁金服做HR的同学帮忙了内推,然后在最近的几天匆匆忙忙地复习JAVA(之前都把精力放在了数据结构、算法等基础上了)。上周五投递的简历,这周四就接到了面试电话,面试GG声音很有磁性,也比较温柔。。。一开始是自我介绍,妈的,好紧张,可能是好久没面试了,感觉中气不足。自我介绍犹如叙说自传,废话讲了一大推,看来最好还是事先准备好一段台词。然后问了参加过哪些社团活动,还是因为紧张竟然把电脑医院的经历给漏说了。。不过这些都是次要的,感觉只是”前戏“,是面试官了解你并帮助你进入技术面试状态的一种方式,无须太介意自己说的怎么样。

  好了,转入正题。以下是面试官的几个问题,知识面还是涉及蛮广的,有JAVA、数据库、http方面的知识、前端以及linux。接下来一一阐述并且总结。

  1、Object类中的方法有哪些,它们各自的作用是什么?

  回答:我当时说了equals(),hashcode(),finalize(),clone(),然后说了它们各自的作用。对于clone()方法我当时提到了默认是浅层复制,然后面试官随即就问到深层复制和浅层复制的区别。我回答浅层复制的话原对象和被克隆对象的引用属性共用一个对象,而深层复制时引用变量类型的属性也会被复制一份。然后他继续问到clone的应用场景,这个问题没答上来。接着他让我用伪代码写一下如果一个对象覆盖equals方法,该怎么写?我边在草稿纸上写边和他说,中间有一步出现了差错,if(o instanceof Student)这一步我说成了强制转换,囧。。。如果不是Student类型的对象会抛出ClassCastException异常的呀,哎。。幸好其他的都是说对的。

  纠错:说了这四个方法,从数量来说尚可,但竟然把最基础的toString()和getClass()方法给忘了,还是因为太紧张的缘故吧。

  toString():重写该方法可以对对象进行自定义的格式输出。默认输出是类名@hashcode值;

  getClass():获取该对象的类类型。

  wait():如果对象调用了wait方法,那么持有该对象的线程会把该对象的控制权交出去,然后处于等待状态。

  notify():如果对象调用了notify()方法就会通知某个正在等待该对象的控制权的线程可以继续运行,但必须等待当前线程执行完sychronized中的代码块。

  notifyAll():如果对象调用了notifyAll()方法就会通知所有正在等待该对象的控制权的线程可以继续运行,但必须等待当前线程执行完sychronized中的代码块。

  关于wait和notify的总结

  2、谈谈对事务的理解。

  根据事务的原则来谈对事务的理解,然后举了一个A账户给B账户转账的例子来解释。

  3、Spring中的事务管理有哪两种?

  我只知道AOP有事务管理的功能。。。

  4、接下来是有关数据库锁的一个问题:在分布式服务器群中,有两台服务器对共享数据库的同一条数据进行并发修改,如果解决同步问题。

  这个问题完全不会。最后的答案是可以在该表中增加一个字段,A服务器操作时,将该字段的值改为正在修改的标记,则B服务器去操作时,查询该字段的值,判断是否有其他服务器正在修改该行数据,如果有则等待,否则可以去修改该行数据。这里的两台服务器好比是线程,而字段好比是线程锁。学习了,呵呵。。。

  5、考察hashmap。

  说了关于hashmap的理解,自己说的都是很多JAVA面试题中常考的哪些知识点,比如实现原理啊,是否线程安全等,这些都没问题。但后面他继续问hashmap两种迭代的方式,各自的时间复杂度是多少?

时间: 2024-10-15 20:58:34

2015年阿里巴巴蚂蚁金服校招JAVA研发工程师内推电话面试的相关文章

2019蚂蚁金服中高级Java工程师面试题

面试基础 谈谈一致hash算法? 按照hash算法来将对应的key哈希到一个具有2^32次方个桶的空间中,即0~(2^32)-1的数字空间.将这些数字头尾相连,想象成一个闭合的环形.如果集群中加入新的机器,采用它的IP或者唯一别名计算哈希值,也映射到环中.新增key值以顺时针的方向,存储到离自己最近的机器中. 参考:https://blog.csdn.net/cb_lcl/article/details/81448570 说说乐观锁和悲观锁? 乐观锁:假设每次操作别人不会修改数据,当更新的时候根

蚂蚁金服初级Java电话面试 面试题

1.String, StringBuffer, StringBuilder 的区别,为什么String 不可改变,StringBuilder可以改变? 2.HashMap 是不是有序的,有哪些有序的Map?为什么TreeMap 是有序的? HashMap是不是线程安全的?若不是,如何实现线程安全问题?加sychronized,要如何加? CurrentHashMap如何实现线程安全的?内部每个segement是如何实现线程安全的? 3.什么是线程死锁?如何避免线程死锁?如何加一个线程死锁检查机制

天下代码一大抄,整个案例的搬是什么鬼!蚂蚁金服?你大爷

写在开始 上班前的第一件事,就是码云看看有什么消息,回复下网友的问题.如果看到喜欢的项目会点进去瞅瞅,然后就开始一天的工作. 然而,这一天的工作并不开心,一个今日热门项目让自己很恼火,一开始感觉并没有什么,直到深入进去,才发现,居然这么赤裸裸的搬挪替换,这都不能算是抄袭! 前情回顾 事情要从一年前说起,闲来无事也给自己充充电,不都说人生苦短,要学 Python 嘛!于是乎就在码云拉了个项目,叫<从零学Python>,关注小柒公众号的朋友们肯定是知道的. 陆陆续续的也更新了不少学习案例,也为大家

厉害了,蚂蚁金服!创造了中国自己的数据库OceanBase

2008年,王坚从微软亚洲研究院常务副院长的位置上离职后,于当年9月加入了阿里巴巴集团担任首席架构师一职,负责集团技术架构以及基础技术平台建设.加入阿里没多久后,王坚就提出了"去IOE"的想法,即摆脱过去IT系统中对IBM小型机.Oracle数据库以及EMC存储的过度依赖. 2009年开始,阿里举全公司之力投入到云计算的研发和使用中,这可视为取代IOE之举.2010年,阳振坤加入了阿里,这位在1999年就成为北京大学首批长江学者.曾获得国家科技进步一等奖.先后担任北京大学计算机科学技术

蚂蚁金服财富技术部,诚招Java研发工程师。校招内推!!!

蚂蚁金服财富技术部,诚招Java研发工程师. 团队是蚂蚁金服财富技术部核心团队,支持亿级互联网交易清算,在这里不仅能学习到先进的互联网技术,也能了解许多终身受益的金融知识. 内推对象 2020届毕业生(毕业时间为2020.1.1-2020.12.31) 杭州.上海.北京 三地可选 内推方式: 1.微信打开链接,自助内推 蚂蚁金服财富BU内推链接:https://alibaba.tupu360.com/campusActivity/getActivityInfo?activityCode=62hV

阿里最全面试100题:阿里天猫、蚂蚁金服、阿里巴巴面试题含答案

[阿里天猫.蚂蚁.钉钉面试题目] 1.微信红包怎么实现. 2.海量数据分析. 3.测试职位问的线程安全和非线程安全. 4.HTTP2.0.thrift. 5.面试电话沟通可能先让自我介绍. 6.分布式事务一致性. 7.nio的底层实现. 8.jvm基础是必问的,jvm GC原理,JVM怎么回收内存. 9.Java是什么. 10.API接口与SDI接口的区别(API是提供给别人的接口). 11.dubbo如何一条链接并发多个调用.Dubbo的原理,序列化相关问题. 12.用过哪些中间件. 13.做

蘑菇街、蚂蚁金服等公司的Java面试题

工作时间参考:17年开始工作,18年6月份毕业,算上实习一年半工作经验.近一个半月,先后参加了很多公司的面试,有失败,也有成功.面试题如下: 1.蘑菇街:Java1.8新特性--Lambda表达式redis的相关操作项目中redis表的设计redis的数据过期策略常见的数据结构遍历Map的几种方式MySQL.redis的设计思路业务逻辑的梳理main方法用private修饰会怎样?ArrayList和LinkedList的区别多线程死锁怎么解决数据库里有海量数据,在不建索引的条件下,用Java代

一位面试了阿里,滴滴,网易,蚂蚁金服,最终有幸去了网易的Java程序员【面试题分享】

前言 15年毕业到现在也近三年了,最近面试了阿里集团(菜鸟网络,蚂蚁金服),网易,滴滴,点我达,最终收到点我达,网易offer,蚂蚁金服二面挂掉,菜鸟网络一个月了还在流程中...最终有幸去了网易. 但是要特别感谢点我达的领导及HR,真的非常非常好,很感谢他们一直的关照和指导. 面试整体事项 简历要准备好,联系方式一定要正确清晰醒目,项目经历按照时间倒序阐述,注意描述自己在项目中承担的职责,简历的模板尽量选择简洁的,毕竟程序员大部分还是喜欢简单明了的. 推荐boss直聘,我觉得很好用(不是广告).

蚂蚁金服十年自研分布式中间件,成就世界级新金融科技平台

中间件,是与操作系统和数据库并列的传统基础软件三驾马车之一,也是难度极高的软件工程.传统中间件的概念,诞生于上一个"分布式"计算的年代,也就是小规模局域网中的服务器/客户端计算模式,在操作系统之上.应用软件之下的"中间层"软件.早期中间件的出现,是为了解决日益复杂的PC服务器.网络甚至不同地理位置机房之间等异构硬件环境中,支撑应用软件的挑战.与操作系统和数据库不同,中间件并没有一个明确的定义,通常来说包括消息.数据.远程过程调用.对象请求代理.事务.构件等几个部分.