今天天津卓众教育java学院小编给大家分享百度java工程师面试题,希望你可以有机会进入大公司。据说面试官自带电脑,整个面试过程都在记录,首先详细询问了最近一份工作项目的架构和工作内容,面试主要围绕工作中用到的组件和中间件技术来扩展,考察掌握程度。百度java工程师面试题如下:
一、百度java工程师面试题
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怎么实现分布式锁
二、百度java工程师初试问题
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解决了什么问题,原理是什么
三、百度java工程师复试问题
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、多线程程序如何设计
以上就是天津卓众教育java学院小编介绍的“百度java工程师面试题”的内容,希望对大家有帮助,更多java最新面试题请继续关注天津卓众教育java学院官网,每天会有精彩内容分享与你。
相关java面试题推荐
最新最全java面试题及答案(从初级到高级)
史上最全的中高级JAVA工程师面试题及答案汇总
Java高级开发工程师面试题
2019史上最全java面试题题库大全800题
哪有资深java工程师面试题