美国上市公司,专注Java培训22年

百度Java程序员面试题都有什么?


百度Java程序员面试题都有什么?去BAT是很多人梦寐以求的职业理想,BAT的入职标准,某种程度上也代表了行业的能力水准和市场的招聘行情,本文就为大家总理了百度的Java工程师面试题,涵盖初试和复试,供你参考。

百度Java程序员面试题都有什么

1面试问题

1.Spring或者数据库的事物隔离级别和传播特性是怎样的

2.final都能修饰什么,它起到什么作用

3.statement和prepareStatement两者有什么区别

4.HashMap和HashTable主要的区别是什么

5.LinkedList和ArrayList的区别是什么

6.HashMap底层的数据结构是怎样的

7.数据库的索引是如何实现的,主键索引和联合索引数据结构有什么区别

8.Servlet的原理是什么,是否是线程安全的

9.JDBC的目的是什么,是一种接口还是一种实现(JDBC本身是一种标准,每种数据库的JDBC是一种实现),有什么主要的技术

10.用过哪种连接池,为什么要用连接池

11.用过哪些缓存,用于什么场景,redis怎么实现分布式锁

2初试问题

1.写一个单例模式

2.斐波那契数列的递归与遍历实现

3.给定2,3,5面值的硬币若干,给出一个数字,计算拼凑这个数字最少用到硬币的个数

4.有10亿个数字,如何找出top100.(引申问题,链表与数组的的选用)

5.HashMap的内部数据结构(第二次问),Rehash的实现

6.ConcurrentHashMap的实现原理,与HashTable区别是什么(分Segment)

7.Java有哪些同步机制

8.数据库有哪些锁,哪些引擎,分别共享锁和排他锁的区别,应用场景有什么不同

9.B树和B+树的区别,为什么选用B+树作为数据库索引,B+数的孩子节点索引用什么方法查找(二分法……),为什么mysql推荐自增int作为主键

10.redis的分布式锁用了什么方法实现(setNX背后的数据结构)

11.synchronize都能修饰什么,有什么区别

12.volatile解决了什么问题,原理是什么

3复试问题

1.Java的异常有几种

2.ThreadLoacl的原理是什么,怎么应用

3.写一个观察者模式和修饰者模式

4.Java都有哪些链接池,链接池的的原理是什么,具体的技术细节,包括核心工作线程,linkedBlockingQueue的原理,一些场景会发生什么(队列满了会怎样,队列空了工作线程会怎样等)

5.servlet的技术细节、原理、线程安全、工作流程

6.Stirng,StringBuilder,StringBuffer之间的区别

7.简述一下GC

8.简述一下AOP

9.Java有哪些Lock

10.Concurrent包都有哪些类,为什么要有concurrent类

11.TreeMap背后的数据结构是什么,红黑树的原理是什么

12.一些复杂的SQL怎么写,四种连接都是什么样的

13.多线程程序如何设计

最后,希望这些能帮助到你们,祝大家面试成功。


【免责声明】本文部分系转载,转载目的在于传递更多信息,并不代表本网赞同其观点和对其真实性负责,如涉及作品内容、版权和其它问题,请在30日内与我们联系,我们会予以重改或删除相关文章,以保证您的权益!

Java开发高端课程免费试学

大咖讲师+项目实战全面提升你的职场竞争力

  • 海量实战教程
  • 1V1答疑解惑
  • 行业动态分析
  • 大神学习路径图

相关推荐

更多
  • 中级Java发开工程师需要那些技术和工程师证
    中级Java发开工程师需要那些技术和工程师证
    中级Java发开工程师需要那些技术和工程师证?中级Java开发工程师通常需要具备以下技术和技能: 详情>>

    2024-04-02

  • Java高级工程师岗位要求
    Java高级工程师岗位要求
    Java高级工程师岗位要求,Java高级工程师是企业中非常关键的技术岗位,主要负责软件的设计、开发、测试和维护工作。具体岗位要求可能因企业的规模、行业、产品和技术栈的不同而有所差异,但通常包括以下几个方面: 详情>>

    2024-03-05

  • 面试Java开发工程师一般问什么问题?
    面试Java开发工程师一般问什么问题?
    面试Java开发工程师一般问什么问题?面试Java开发工程师时,面试官通常会从多个角度评估应聘者的技能和经验,包括基础知识、编程能力、项目经验、问题解决能力、沟通能力以及对Java技术的理解。以下是一些常见的面试问题: 详情>>

    2024-02-29

  • 如何用Java开发游戏?
    如何用Java开发游戏?
    如何用Java开发游戏?使用Java开发游戏可以分为几个步骤,下面是一些基础的指导: 详情>>

    2024-02-29

  • Java开班时间

    收起