美团、58、百度、阿里面经

今天在清理电脑文件的时候,发现有一份当年记录的文件,里面记录了我当年参加面试的时候面试官问我的问题。想想还是写出来。希望看到的人能有点收获

百度

一面:

自我介绍、
hashmap和hashtable区别、
对线程安全的理解、
讲讲web三大架构、
为什么要用struts做mvc、
什么技术是关于解耦的、
AOP是怎么实现的、
java的代理是怎么实现的

二面:

自我介绍
介绍项目经验
了解什么协议吗?
http和https的区别
get提交和post提交的区别
怎么解决中文乱码问题
设计模式
你对MVC的理解
XML和JSON的区别
json和xml哪个流量比较大
抽象类和接口的区别
java四种引用

三面

自我介绍,项目介绍
主修课程,学习成绩(问得十分详细,班级排名,学年排名,奖学金等级),
详细介绍一个你认为收获最多的项目,
详细介绍一个做的时间最长的项目,你在项目中扮演的角色。(1.为什么你不是leader,2.凭什么你是leader)
详细介绍你的实习经验,详细介绍你实习的公司,你的部门,你的职位
代码实现深度优先和广度优先
如何快速查出你当前所在地最近的一百家餐馆(不能用遍历)
计算机网络分层,每层所用协议,协议所占端口,
海量数据查出每天访问百度网站最多的前100个人的IP地址。
工作中遇到困难怎么解决,
你的下属积极性不高你怎么办,
你对自己的评价是怎么样的,
你凭什么证明你有你所说的这些能力呢?
你简历上的自我评价和你自己介绍的有些出入啊,简历是认真写的吗?

美团

一面

写代码:字符串逆序
如何获取到美团网页上商家的名称、地址、电话号等
手写一段sql语句,具体内容忘了,好像和limit有关
sql注入原理

二面

排序算法介绍、复杂度、稳定性
快速排序原理
手写一个自己觉得最拿手的排序算法

概率题:具体内容忘了,和生日有关

58

一面:

数据库范式
乐观锁悲观锁
数据库索引
接口和实现类区别
集合类介绍
各种集合类之间的区别

二面:

数据库锁机制
事务隔离机制
已知冰箱这个东西,如何设计他的bean结构
继承和组合区别
手写单例
设计模式
SERVLET生命周期

三面:

数据库锁机制
osi七层模型以及tcp/ip四层模型
七层和四层有什么区别
项目中遇到的问题
内存溢出和内存泄漏
Spring的特性
aop和ioc介绍

阿里

一面:

xml解析方式
看过哪些开源项目
看过Java一些类的源代码吗
hashtable原理
hashtable是怎么实现线程安全的
网站访问量巨大、如何提高效率
html提交如何保证安全
https如何加密的
post和get提交的区别,
get的字节限制是协议本身限制的嘛?
jvm布局
classloader原理
数据库引擎
数据库事务隔离机制及特点
hadoop源码看过没
html访问全过程
dns是基于tcp还是udp的
使用过翻墙工具吗
goagent怎么实现的

二面:

https怎么做到安全的
数据库连接池原理
连接池使用使用什么数据结构实现
实现连接池
B+树和二叉树查找时间复杂度
什么时候会发生jvm堆(持久区)内存溢出
内存溢出了怎么办
简单项目介绍
spring用的什么版本,
spring 3 和以前的有什么区别吗
你在项目中使用过注解吗
让你实现注解的话你怎么实现
项目中遇到什么问题
有没有遇到设计层面的问题
项目中怎么保存用户登录信息的
如果cookie禁用了呢
lmbda表达式
Java8新特性

你觉得Java哪个技术最重要





——我的个人思考:想要进入BAT起码得到达这种水平   自己用 Linux C/C++ 思考其实现方式

  • 1
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
整理了网上的一些java面试题目,很全很强大 面向对象的特征有哪些方面 1. 抽象:抽象就是忽略一个主题中与当前目标2. 无关的那些方面,3. 以便更充分地注意与当前目标4. 有关的方面。抽象并不5. 打算了解全部问题,而6. 只是选择其中的一部分,7. 暂时不 8. 用部分细节。抽象包括两个方面,9. 一是过程抽象,10. 二是数据抽象。 11. 继承:继承是一种联结类的层次模型,12. 并且允许和鼓励类的重用,13. 它提供了一种明确表述共性的方法。对象的一个新类可以从现有的类中派生,14. 这个过程称为类继承。新类继承了原始类的特性,15. 新类称为原始类的派生类(子类),而16. 原始类称为新类的基类(父类)。派生类可以从它的基类那里继承方法和实例变量,17. 并且类可以修改或增加新的方法使之更适合特殊的需要。 18. 封装:封装是把过程和数据包围起来,19. 对数据的访问只能通过已定义的界面。面向对象计算始于这个基本概念,20. 即现实世界可以被描绘成一系列完全自治、封装的对象,21. 这些对象通过一个受保护的接口访问其他对象。 22. 多态性:多态性是指23. 允许不同24. 类的对象对同25. 一消息作出响应。多态性包括参数化多态性和包含多态性。多态性语言具有灵活、抽象、行为共享、代码共享的优势,26. 很好的解决了应用程序函数同27. 名28. 问题。 2、String是最基本的数据类型吗? 基本数据类型包括byte、int、char、long、float、double、boolean和short。 java.lang.String类是final类型的,因此不可以继承这个类、不能修改这个类。为了提高效率节省空间,我们应该用StringBuffer类 3、int 和 Integer 有什么区别 Java 提供两种不同的类型:引用类型和原始类型(或内置类型)。Int是java的原始数据类型,Integer是java为int提供的封装类。Java为每个原始类型提供了封装类。 原始类型封装类booleanBoolean charCharacter byteByte shortShort intInteger longLong floatFloat doubleDouble 引用类型和原始类型的行为完全不同,并且它们具有不同的语义。引用类型和原始类型具有不同的特征和用法,它们包括:大小和速度问题,这种类型以哪种类型的数据结构存储,当引用类型和原始类型用作某个类的实例数据时所指定的缺省值。对象引用实例变量的缺省值为 null,而原始类型实例变量的缺省值与它们的类型有关。 4、String 和StringBuffer的区别 JAVA平台提供了两个类:String和StringBuffer,它们可以储存和操作字符串,即包含多个字符的字符数据。这个String类提供了数值不可改变的字符串。而这个StringBuffer类提供的字符串进行修改。当你知道字符数据要改变的时候你就可以使用StringBuffer。典型地,你可以使用 StringBuffers来动态构造字符数据。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值