java架构师面试答案

一面

一面就做了一道算法题,要求两小时内完成,给了长度为N的有重复元素的数组,要求输出第10大的数。典型的TopK问题,快排算法搞定。

算法题要注意的是合法性校验、边界条件以及异常的处理。另外,如果要写测试用例,一定要保证测试覆盖场景尽可能全。加上平时刷刷算法题,这种考核应该没问题的。

二面

  1. 自我介绍下呗
  2. 开源项目贡献过代码么?(Dubbo提过一个打印accesslog的bug算么)
  3. 目前在部门做什么,业务简单介绍下,内部有哪些系统,作用和交互过程说下
  4. Dubbo踩过哪些坑,分别是怎么解决的?(说了异常处理时业务异常捕获的问题,自定义了一个异常拦截器)
  5. 开始进入正题,说下你对线程安全的理解(多线程访问同一个对象,如果不需要考虑额外的同步,调用对象的行为就可以获得正确的结果就是线程安全)
  6. 事务有哪些特性?(ACID)
  7. 怎么理解原子性?(同一个事务下,多个操作要么成功要么失败,不存在部分成功或者部分失败的情况)
  8. 乐观锁和悲观锁的区别?(悲观锁假定会发生冲突,访问的时候都要先获得锁,保证同一个时刻只有线程获得锁,读读也会阻塞;乐观锁假设不会发生冲突,只有在提交操作的时候检查是否有冲突)这两种锁在Java和MySQL分别是怎么实现的?(Java乐观锁通过CAS实现,悲观锁通过synchronize实现。mysql乐观锁通过MVCC,也就是版本实现,悲观锁可以通过select… for update加上排它锁)
  9. HashMap为什么不是线程安全的?(多线程操作无并发控制,顺便说了在扩容的时候多线程访问时会造成死锁,会形成一个环,不过扩容时多线程操作形成环的问题再JDK1.8已经解决,但多线程下使用HashMap还会有一些其他问题比如数据丢失,所以多线程下不应该使用HashMap,而应该使用ConcurrentHashMap)怎么让HashMap变得线程安全&
  • 25
    点赞
  • 10
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
### 回答1: Java架构师面试宝典是一本针对Java架构师面试准备的参考书籍,主要内容包括Java基础知识、Java框架、据库、操作系统、网络、性能优化、架构设计等方面的知识点和题目。在面试准备中,这本书可以帮助Java架构师提高对知识点的掌握程度和把握面试节奏。 Java架构师面试题通常涉及的知识点很广泛,因此需要对多个方面进行了解和掌握。对于Java基础知识,包括面向对象、异常机制等这些基础内容,建议要牢记相关概念和使用方法。对于Java框架,包括Spring、Hibernate、MyBatis等常用框架,掌握其核心原理和使用方法是必须的。对于据库,包括MySQL、Oracle、MongoDB等,需要了解其基本使用方法和优化细节,以及对SQL语言的掌握程度。对于操作系统和网络,需要了解Linux、Windows等常用操作系统的基本操作和命令,以及TCP/IP协议等网络协议的基本原理。对于性能优化和架构设计,需要对代码、据库、网络等方面有一定的优化思路和方案。 总的来说,Java架构师面试宝典提供了大量的面试题和知识点,并为读者提供了一些解答思路和解决方法。但是,仅有这本书是不够的,还需要对知识点进行巩固和练习,逐渐提高自己的实践能力和应变能力,才能在面试中展现出优秀的表现。 ### 回答2: Java架构师面试宝典是一本好书,它的作者通过大量的面试题目和答案,帮助Java架构师更好地应对面试。书中的面试题目分为Java基础、多线程、JVM、分布式、算法、操作系统、据库等等方面。对于想要成为Java架构师的人而言,这本书是一本很好的入门指南。 书中的答案很实用,能够帮助读者更好地理解Java架构师面试题目。作者在答案中提供了很多实际的案例,让读者更容易理解和掌握相关的知识点。同时,答案也针对每个面试题目提出了符合面试官口味的答题思路和技巧,帮助读者在面试时更好地回答问题。 总的来说,Java架构师面试宝典是一本值得推荐的书籍。它可以帮助读者更全面地掌握Java编程知识,并且在面试时更加自信。但是需要注意的是,仅仅掌握了面试题目并不能代表掌握了Java编程,读者在看完书后还需要继续学习和实践。 ### 回答3: Java架构师是一个高级职位,需要具备很多技能和经验。Java架构师面试宝典和答案是帮助候选人为面试做好准备的资源。这本面试宝典覆盖了Java架构师面试的各种问题。 Java架构师需要掌握的技能包括Java编程,据库管理,互联网技术等等。这些技能在Java架构师面试中都会被提及。候选人需要准备好针对这些技能的答案,如何解决相关的技术问题。 除了技术相关的问题,Java架构师面试还需要考察候选人的项目管理能力,领导能力和团队协作能力。候选人需要准备好面对类似的问题,例如: 1. 推动项目进展的困难点是什么? 2. 你在团队中的领导角色是什么? 3. 如何处理团队成员之间的冲突? 候选人还需要准备好自我介绍,包括自己的职业发展历程和技能。此外,候选人还需要知道如何回答一些常见的面试问题,例如: 1. 你最擅长的编程语言? 2. 你最喜欢的Java框架是什么? 3. 你能否谈谈你在Java开发中遇到过的最大问题? 综上所述,Java架构师面试宝典和答案为候选人提供了很好的参考和准备。候选人可以预见面试的问题,精心准备自己的答案,以获得更好的面试表现。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值