2017年终巨献阿里、腾讯最新Java程序员面试题,准备好进BAT了吗
Java基础
进程和线程的区别;
Java的并发、多线程、线程模型;
什么是线程池,如何使用?
数据一致性如何保证;Synchronized关键字,类锁,方法锁,重入锁;
Java中实现多态的机制是什么;
如何将一个Java对象序列化到文件里;
说说你对Java反射的理解;
同步的方法;多进程开发以及多进程应用场景;
在Java中wait和seelp方法的不同;
synchronized 和volatile 关键字的作用;
服务器只提供数据接收接口,在多线程或多进程条件下,如何保证数据的有序到达;
抽象类与接口的区别;应用场景;抽象类是否可以没有方法和属性;
静态属性和静态方法是否可以被继承?是否可以被重写?以及原因?
修改对象A的equals方法的签名,那么使用HashMap存放这个对象实例的时候,会调用哪个equals方法;
说说你对泛型的了解;
Java的异常体系;
如何控制某个方法允许并发访问线程的个数;
动态代理的区别,什么场景使用;
Dex加载过程和优化方式;
Jvm和Gc机制;
常用的设计模式。
数据结构与算法
堆和栈在内存中的区别是什么(数据结构方面以及实际实现方面);
最快的排序算法是哪个?给阿里2万多名员工按年龄排序应该选择哪个算法?堆和树的区别;写出快排代码;链表逆序代码;
求1000以内的水仙花数以及40亿以内的水仙花数;
子串包含问题(KMP 算法)写代码实现;
万亿级别的两个URL文件A和B,如何求出A和B的差集C,(Bit映射->hash分组->多文件读写效率->磁盘寻址以及应用层面对寻址的优化)
蚁群算法与蒙特卡洛算法;
写出你所知道的排序算法及时空复杂度,稳定性;
百度POI中如何试下查找最近的商家功能(坐标镜像+R树)。
遍历二叉树
自己集合实现一个队列
自己实现线程安全类
快速排序和冒泡的排序,怎么转换一下。
其它
死锁的四个必要条件;
常见编码方式;utf-8编码中的中文占几个字节;int型几个字节;
实现一个Json解析器(可以通过正则提高速度);
MVC MVP MVVM; 常见的设计模式;写出观察者模式的代码;
TCP的3次握手和四次挥手;TCP与UDP的区别;
HTTP协议;HTTP1.0与2.0的区别;HTTP报文结构;
HTTP与HTTPS的区别以及如何实现安全性;
都使用过哪些框架、平台;
都使用过哪些自定义控件;
介绍你做过的哪些项目;
非技术问题汇总
研究比较深入的领域有哪些;
对业内信息的关注渠道有哪些;
自己最擅长的技术点,最感兴趣的技术领域和技术点;
项目中用了哪些开源库,如何避免因为引入开源库而导致的安全性和稳定性问题;
时针走一圈,时针分针重合几次;
现在下载速度很慢,试从网络协议的角度分析原因,并优化(网络的5层都可以涉及)。
java交流群669823128
经验
阿里
阿里巴巴
阿里针对大部分校招的普通人来说,一面只会放出M1级别的,对应到P6,问你点基础知识,二面可能是M2级别的也就是P7、P8的样子,运气好的遇到跟你谈谈人生谈谈职业规划什么的,运气不好的遇到那种下面带几个team还成天看技术blog的就问你点比较新鲜的知识或者是比较基础但是冷门的那种知识,所以平时没事看点跨领域的博客、看点经典名著防防身还是很必要的,经历了一整天枯燥无味的面试突然碰到一个眼前一亮的绝对是一个加分项。
腾讯
tx
腾讯的话也是类似的道理,校招一面放出的是各个有headcount的leader,T3.1到T3.3不等,几个一面面试官对应一个二面面试官,后者是前面那几个的老大。像鹅厂这样的公司的是:
业务领域跨的特别广。电商、SNS、普通的C/S软件、游戏、各种App。
一面面试官直接对面试者负责。换句话说,通过你就意味着他要直接当你老大。
一面完全是随便分的,你投的感兴趣事业是互娱,但是分到的可能是SNG的某款社交产品的程序组老大面你,所以你的面试官不一定对得上的你background。
应该做哪些准备,才拥有进入BAT研发部门的资格?
电商项目实战
分布式专题
工程化专题
微服务架构专题
性能优化
源码分析专题
java学习群669823128
2017年终巨献阿里、腾讯最新Java程序员面试题,准备好进BAT了吗的更多相关文章
- 阿里,百度,腾讯招聘 Java 程序员的技术标准
阿里巴巴篇 扎实的计算机专业基础,包括算法和数据结构,操作系统,计算机网络,计算机体系结构,数据库等 具有扎实的Java编程基础,理解IO.多线程等基础框架 熟练使用Linux系统的常用命令及shel ...
- “大话架构”阿里架构师分享Java程序员需要突破的技术要点
一.源码分析 源码分析是一种临界知识,掌握了这种临界知识,能不变应万变,源码分析对于很多人来说很枯燥,生涩难懂. 源码阅读,我觉得最核心有三点:技术基础+强烈的求知欲+耐心. 我认为是阅读源码的最核心 ...
- 聊聊阿里社招面试,谈谈“野生”Java程序员学习的道路
引言 很尴尬的是,这个类型的文章其实之前笔者就写过,原文章里,笔者自称LZ(也就是楼主,有人说是老子的简写,笔者只想说,这位同学你站出来,保证不打死你,-_-),原文章名称叫做<回答阿里社招面试 ...
- 一名十年Java程序员回忆阿里面试经历——揭开阿里面试的“遮羞布”
阿里面试经历 去阿里面试可以说非常非常的偶然和戏剧性,因为本人根本没投简历,以至于阿里hr给我电话的时候我一度认为是诈骗电话.因为深圳这家公司不错我还想在这里干个两年左右再考虑考虑. 这个时候的本人已 ...
- 腾讯Java程序员第二轮面试11个问题,你会几个?
此前,分享了阿里巴巴.网易.百度等多家名企的JAVA面试题. 这也引来了不少程序员网友们的围观. 其中,也有相当一部分网友是已经从事Java开发好多年的程序员,当他们阅读完JAVA面试题的反应是:一个 ...
- 2017年 Java 程序员,风光背后的危机
不得不承认,经历过行业的飞速发展期,互联网的整体发展趋于平稳.为什么这么说?为什么要放在 Java 程序员的盘点下说? 的确,对于进可攻前端,后可守后端大本营的 Java 程序员而言,虽然供应逐年上涨 ...
- 十面阿里 Java 程序员,最终拿下阿里 P6 offer!
转子:https://mp.weixin.qq.com/s/RkMxPbm8E99-rTZKmvBy6Q 今天介绍小编的一个朋友,他现今有四年开发经验了,前前后后为了进阿里面试十次(阿里旗下—蚂蚁金服 ...
- 2016 Java程序员的年终总结(转)
2016 Java程序员的年终总结 技术积累 (1)代码规范 1.1.1.通常的模块分布:一般如果你要实现一个web 应用,你从后台将数据展示到前端页面,在一个比较大的公司,你少不了跟其他项目有交集( ...
- 腾讯架构师分享的Java程序员需要突破的技术要点
一.源码分析 源码分析是一种临界知识,掌握了这种临界知识,能不变应万变,源码分析对于很多人来说很枯燥,生涩难懂. 源码阅读,我觉得最核心有三点:技术基础+强烈的求知欲+耐心. 我认为是阅读源码的最核心 ...
随机推荐
- Django:学习笔记(3)——REST实现
Django:学习笔记(3)——REST实现 了解REST风格 按照传统的开发方式,我们在实现CURD操作时,会写多个映射路径,比如对一本书的操作,我们会写多个URL,可能如下 web/deleteB ...
- springmvc map
/** * 目标方法可以添加 Map 类型(实际上也可以是 Model 类型或 ModelMap 类型)的参数. * @param map * @return */ @RequestMapping(& ...
- maven自动化构建deploy
<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/20 ...
- Spring_使用 NamedParameterJdbcTemplate
applicationContext.xml <?xml version="1.0" encoding="UTF-8"?><beans xml ...
- LuManager升级php5.6.27方法
LuManager自带的PHP在FastCGI模式是 5.2.17版,非FastCGI模式是 5.3.14版.由于360网盘的停服,已不敢再用那些免费的网盘,干脆自己搭个私有云.查了下相关资料准备先试 ...
- Graph_Master(连通分量_B_Trajan+完全图)
hdu_4635 题目大意:给出一张DAG(n个点,m条边),求出能加的最大边数,使得该图无重边,无自环,非强连通. 题解:这题题面很好理解,也没有什么很难的点,主要是如何求出最大边数需要动点脑筋.首 ...
- kolla all-in-one 安装
http://docs.openstack.org/developer/kolla/ 使用了Docker containers and Ansible playbooks 目前在Fedora/Ubun ...
- LeetCode第[66]题(Java):Plus One
题目:数组加一 难度:Easy 题目内容: Given a non-empty array of digits representing a non-negative integer, plus ...
- python学习笔记(threading接口性能压力测试)
又是新的一周 延续上周的进度 关于多进程的学习 今天实践下 初步设计的接口性能压力测试代码如下: #!/usr/bin/env python # -*- coding: utf_8 -*- impor ...
- LinuxMint Mate 安装Google拼音输入法(Fcitx)
安装Google拼音输入法(Fcitx)$ sudo apt-get install fcitx fcitx-config-gtk fcitx-frontend-all fcitx-ui-classi ...