java社招笔试题-java面试笔试基础题
我觉得也该写一篇文章来总结下自己这十天的找工作经历了,6月13号进京到今天正好是10天,除去端午三天假期,找工作的时间也就是一周时间。
分享下我这十多天来找工作的过程中遇到的问题,顺便记录总结下面试经验吧
在BOSS直聘上联系了将近300个BOSS,拉勾、实习僧也有很多,实习僧大多都不回或者是很晚才回的。
一周的时间面试了9家Java后台开发实习岗位,拿到了8个offer。
本人大三,软件工程专业,没有过实习经验,大学一直来自学Java,实习岗投的大多是Java后台实习的岗。编程语言熟悉情况以Java为主,算法基础薄弱,Java基础扎实。可能因为自身学历关系吧,很多大公司筛选简历直接就筛选掉,也没有面试的机会。
视频面试的公司:
公司1
在学校视频面试的,共两面。
一面:
视频一面简单聊了聊Javajava社招笔试题,问了些JavaSE的东西,答的还行,然后说等二面。
二面:
另一个技术的和我聊,聊了快1个小时
String、StringBuffer、StringBuilder的区别,这个问题我跟他讲了底层的实现原理,以及各个String类的区别,和类的方法的底层代码实现
字符串拼接产生几个对象,也就是+和appen的区别
List的实现原理,LinkedList的底层实现原理
HashMap的底层实现原理
MySql问了存储引擎java社招笔试题,内外连接(join)的用法
Linux的常用的命令
spring问了IOC的实现方式以及自己对IOC的理解
mybatis问了动态sql的实现方式,以及mybatis和hibernate的区别
当天面完,技术的就和我谈工资了,说的是实习生工资是2800—3200,问我多会可以入职,我给说的是20号之后
因为这个公司是月初面的,所以很多问题也记得不是很清,大概记得就是这些。
第二天直接发了入职邀请,有个7天的试用期,试用期过了直接发正式的offer
公司2
月初电话面试的,小型创业公司,公司CEO直接问的,技术的问的都没什么印象,问的更多的是大学做了哪些事,学习能力这方面的问题
稀里糊涂就给发offer了,实习工资是4k-6k,给说的20是入职。所以这个公司也就没有考虑过了,就是面一面。
北京现场面试:
公司3
先说下对公司的感受,创业公司,公司共21人,12个做开发的,8个做后台的,面过所有的公司问的技术最强的,技术的问了整整一个小时,涉及的面也很广,也有深度,感觉整个团队的氛围也挺好不错的,两个技术面试官问,一个专门问算法+数据结构,另一个问Java
面试问题
remove底层实现
数据库的缓存机制
完全二叉树
手写快排算法
char和varchar的区别
String的append
接口的好处
锁在什么方面会起作用
ajax的回调
ajax如何实现跨域
list的size长度
Java的回调
对aop的理解
map是有序还是无序的
什么时候添加索引
mysql的int类型在Java中的长度是多少
aop和di的理解
fail-fast机制
int和integer的区别
集合HashMap的实现原理
linux登录数mysql据库的命令
redis的数据类型
聚簇索引
公司4
公司去了后感觉是做外包的,去了做了一份笔试题。
1.判断有多少个素数,并输出
2.创建一个二叉树,写出遍历的方法
3.如何实现观察者模式
4.有一张employee表,字段(id、username、age、managerid、pasterid)
sql多表查询,查询主管、人员
查询出所有的员工
分组显示不同部门的员工
CRM系统是做什么的
mysql的存储过程
权限管理
list怎么实现分页
collection的比较器的原理
Java基础基本没怎么问,问的大多都是项目和业务相关的问题
公司5
公司环境氛围不错,技术就不知道了
面试的时候没有问技术的问题,看完简历HR问了我职业规划,问了我可以实习的时间,多会可以实习
技术的来面,头发很少,就一个人,看起来很厉害
没有问任何关于技术的东西,问了我的职业规划,告诉我公司在做的业务,给我说实习生做的工作主要是写一些H5的界面,去写前端的,工作可能会很枯燥,问我在工作中枯燥我要怎么去做
完了后HR来和我谈工资,一天150,HR给我说了一二面对我的评价,然后就开始给我讲公司的盈利情况、公司的环境、公司做的产品、转正工资什么的,反正都是她在讲,讲了一堆
说下自我感觉:公司薪资不错,但是没有问我关于技术的问题,所以对公司印象就很一般了
公司6
去了先做一套笔试题
1.全英文,没做
2.地址栏输入后会发生什么
3.jvm内存的组成及用法,new的对象放到哪个区
4.1~100点数字,长度
做了2、3、4
做完后面试官看了说,第一题应该也会做出来的,就给我翻译了下第一题,其实也就是一个简单的排序,给说了下用冒泡和快排都可以解决的,让我手写快排,简单写了下核心的快排比较过程
接下来开始聊,由于下午比较困,也没有好好的准备面试,所以回答过的问题可能有的已经忘记了,先写点能记起来的
有没有看过源码,我说框架的源码没看过,Java集合相关的源码有看过,让我讲讲集合
List有哪些list,底层怎么实现的
HashMap的实现原理,hash表怎么解决hash冲突的
JDK1.8中HashMap的新特性,有哪些改变,以及在1.8中HashMap的实现原理
HashMap与ConcurrentHashMap的区别(这个问题本来要往底层去答的,但是当时懵逼了,忘记了有的东西,没好好说,就说了下加锁和没加锁的区别,之前ConcurrentHashMap的源码也看过也了解了,但是面试答的时候忘记了)
ConcurrentHashMap的扩容机制
说一说JUC包下的类
Mysql问了存储引擎,以及mysql的存储用到了哪种数据结构,简单的说一说
说一说对关系型数据库和非关系型数据库的理解
redis属于哪种非关系型数据库,mongodb属于哪种,说一说区别
说一说redis,redis的数据类型,redis的持久化的实现方式
redis的底层存储结构
说一说spring的ioc和aop,问我有没有看过spring的源码
springmvc和mybatis的区别
mybatis中$和#哪个用的最多,为什么要用,底层是怎么实现的
说一说对集群的理解,集群的概念
对消息队列的理解
二叉树是什么,和红黑树有什么区别,红黑树的实现原理
还问了统计学的问题,怎么统计亦庄有多少个小卖部
Kotlin和Java的区别,为什么会用Kotlin
公司7
去了先做一套笔试题:
常见异常