面试干货!java程序员成功拿到百度offer

百度java程序员一面:

1 手写ArrayList

2 手写进制转换算法,求出一个数的二进制数1的个数

3 JAVA基础 equals和==

4 多线程方式、threadlocal,各种锁,synchronized和lock

5 设计模式、spring类加载方式、实例保存在哪、aop ioc、反射机制

6 类加载器,双亲委派模型,热部署

7 jvm内存模型,内存结构、堆的分代算法、堆的分区、gc算法、gc过程。

8 tcp ip 七层模型 rest接口规范 get和post区别,长度,安全。

9 tcp ip的arp协议,两个同一网络的主机如何获得对方的mac地址。

10 负载均衡、高并发、高可用的架构

11 mysql的引擎区别

12 redis缓存,redis的集群部署,热备份,主从备份,主从数据库,hash映射找到知道指定节点。

13 了解云计算么,了解云容器docker么,容器和虚拟机的区别。

百度java程序员二面:

1自我介绍 项目中负责哪些 做了哪些

2项目中的数据库备份,主从数据库、集群

3数据库的索引原理,b+树原理,trie树引申,二叉查找树的原理

4海量数据中查找一个单词,分布式计算map reduce ,或者用hsah映射筛选部分结果

5java的抽象类和接口区别、java的hashmap,java的内存模型,分区,分代垃圾回收算法。实例、常量放在哪里。

6 int 4个字节,double 8个字节。

7 多线程中的wait和sleep区别,notify的作用

8 设计模式了解哪些,写一个观察者模式。实现两个接口,一个是主题一个是观察者,并写出对应方法。

9写一个生产者消费者队列的方法,分别写两个类代表生产者和消费者,并且用队列模拟其生产消费。用while循环和wait notify可以实现,但我忘记在队列上加synchronize关键字,于是让我再写一题。写的是:输入一个字符串,输入第一个只出现一次的字符,写出来了。

10:tcp ip的四次挥手 子网掩码的作用, 子网掩码(subnet mask)又叫 网络掩码 、 地址掩码 、子网络遮罩,它是一种用来指明一个 IP地址 的哪些位标识的是 主机 所在的子网,以及哪些位标识的是主机的位掩码。子网掩码不能单独存在,它必须结合IP地址一起使用。子网掩码只有一个作用,就是将某个IP地址划分成 网络地址 和 主机地址 两部分。

11 :了解linux么,说一下linux的内核锁?没接触过。

12 有没有用过sed 使用shell脚本写一个将文本中的字符替换掉的脚本,大概说了一下用grep || 替换。没再问linux的

百度三面:

面试干货!java程序员成功拿到百度offer_第1张图片

1自我介绍

2负责模块,哪些模块,项目一的架构,我说太久了忘了,说最近的项目。

3数据库连接池用的是什么,配置文件呢,数据库驱动怎么下载的,持久层框架呢。

4为什么要用数据库连接池,有什么好处。

5java的内存模型,变量和实例存在哪。java栈的作用,java的堆存什么,方法区存什么。

java的分代回收。

6项目如何部署到云主机上,有什么速度提升,为什么有提升,答主要是设备性能和带宽。

7tomcat的配置,堆得初始大小是多少,达不知道。

8在网易实习的相关事项。

9问遇到过什么难题。

10问台湾交流经历,学习内容。

11问在遇到问题时候的办法。

12抗压能力

13优缺点

14接受加班。

15遇到工作问题,同事不配合怎么办。

16快速上手工作的办法。

17平时学习的方法,举几点。

18为什么要换工作,个人,女友。详情。

19什么时候能来。

20职业规划

想要学习高性能及分布式、深入浅出。性能调优、Spring,MyBatis,Netty源码分析可以加群:668395460【JAVA架构进阶群】里面有Java阿里大牛直播讲解知识点 走的就是高端路线

1、具有1-5工作经验的,面对目前流行的技术不知从何下手,需要突破技术瓶颈的可以加群。

2、在公司待久了,过得很安逸,但跳槽时面试碰壁。需要在短时间内进修、跳槽拿高薪的可以加群。

3、如果没有工作经验,但基础非常扎实,对java工作机制,常用设计思想,常用java开发框架掌握熟练的,可以加群。

4、觉得自己很牛B,一般需求都能搞定。但是所学的知识点没有系统化,很难在技术领域继续突破的可以加群。

你可能感兴趣的:(面试干货!java程序员成功拿到百度offer)