java

导航

百度公司java程序员面试题

来源 :中华考试网 2020-11-05

  一、百度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面值的硬币若干,给出一个数字,计算拼凑这个数字最少用到硬币的个数

  填写下面表单即可预约申请免费试听java课程!害怕学不会?助教全程陪读,随时解惑!担心就业?一地学习,可全国推荐就业!

  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.多线程程序如何设计

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

分享到

相关资讯