招银网络2021提前批后端java面经
1.自我介绍(HBase) 2.Hbase架构介绍下?(因为我的项目中涉及到了HBase,讲了Hbase整体架构和LSM树) 3.封装的好处(面向对象的三个特性,讲了将客观事物抽象成一个类,然后可以设置访问权限) 4.hashmap(介绍一下用到的数据结构,扩容机制讲一下?为什么必须是容量必须是2的整数次方,这和索引计算方法有关) 5.synchronized关键字用到方法上是锁定的什么(分为类方法-class对象和普通方法-实例对象) 6.synchronized关键字:如果在一个线程中有一个实例对象有两个synchronized修饰的两个普通方法,线程已经获得了一个方法的使用权,那么在进入另一个方法时候用不用再竞争锁(不需要的,因为锁重入,我当时回答的也是不需要,理由是线程已经得到了,就可以直接进入,没想到锁重入) 7.Volatile关键字介绍一下,介绍一下它的使用场景(Java提供的一种轻量级的同步机制,...,然后使用场景作为布尔类型,采用while通知,在DCL单例模式中用到的多) 8.runnalble和callable的区别?(没回答上来) 9.双亲委派模型内容和的好处(只保证类一次加载,只有一份,我说的安全,如果另外一个人写了一个String类,如果按照这样去加载就回加载失败) 10.MySQL中的in 和 exist的性能比较?(没回答上来,面试官后来解释:in是全表扫描,exist可以使用索引) 11.MySQL中的索引的好处?(1.加速查询2.可以保证一些约束,例如创建唯一索引,可以保证唯一性约束3.加速表与表之间的连接,特别是在实现参考完整性方面有意义4.可以在查询过程中使用加速隐藏器,优化性能) 12. 项目中你负责的是哪一块?具体说一下(我讲了架构) 13.有什么问题问我的?(1.招行和招银是什么关系,招银是子公司,不对外服务,只对招行服务2.面的怎么样子?没办法直接回答,等1-2周。)#招银网络##面经##校招##Java工程师#
提示