顺丰科技面试-java开发
顺丰科技的面试官感觉人都挺随和,总共经历三面,两轮技术面,一轮hr面。
一、专业面一
主要是对着我的简历上的东西问,我的一个项目经历,两个实习上面以及自己提到会的技能展开的提问。
(1)自我简介
(2)对实习一(招商银行基于工作流的资金审批系统开发)内容的提问,前后端分离原则简单叙述,基于后端写前端页面时,如何对于登录人的权限进行管理,比如在rest接口写什么,实现不同登陆人的访问权限控制。这个我没回答上来,因为之前在写这个系统时,只是简单写了一些前端页面,来测试后端的所有功能有没有实现。对这个问题没有解决
(3)实习一中使用的数据数据量有多少,有没有考虑过在高并发访问环境下你们的这个系统承载力?我的回答是no。
(4)假如你的系统现在突然cpu的占有率非常高,你有没有考虑过怎么分析这个问题,以及处理方法。我就回答垃圾回收。文有没有使用什么工具可以观测这个进程的堆情况,我回答了可以使用一个插件,能够实时图形化观测堆的情况(Eden,Suvival,老年代等),但名字记不起来了。
查了一下,在命令行中输入jvisualvam,这是jdk自带的观测java进程运行情况的工具。


(5)UML的几种类型?
(6)实习二(中国移动风控项目,数据挖掘),看见有使用linux系统的经历,问常见的命令,这个我真不会只回答了,会使用常见的查看,执行命令。好像问了一个,如何查看某个时间序列命名的文件,如何查看某个时间范围内的。这些文件的文件内存(是不是内存,还是其他的我记不清楚了,因为确实不太会linux系统)?
开始问简历上写的技能了,主要三个,jvm、锁、hsahmap
(7)jvm会不会?里面包含哪些部分,你把你知道了的写一下。然后我就画了一个jvm的栈,堆,方法区,程序计数器的大概图。然后,写了一个语句,问执行这个语句,jvm的这些部分会发生什么变化。
public class B{
public A classA=new A();
}
我解释了一遍,栈,堆,方法区、程序计数器的联系和变化
这部分面试前一天晚上才复习过一遍之前看的视频,所以回答的表较好,
(8)hashmap是不是线程安全的,与hashtable有什么区别。如果多个线程下,同时对一个hashmap共享变量正向put()操作,并且么个线程的key都不一样,那么,这个hashmap共享变量会不会线程不安全?
(9)有一个共享变量i初始值为0,现有10个线程各自执行一遍++i;那么最后输出的值会怎样?我回答小于100,那么最小值会是多少。我一开始回答是1,后来画图后考虑了一下极端情况,改为10。我问面试官对不对,并解释了一遍,面试官说那就对呗。哈哈
(10)假设一个类存在很多方法。现在只要有调用这个类的这些方法时,系统能够打印出调用了这个方法的日志,该怎么实现?我回答动态代理
拿到通过卡等二面
二,专业面二
把一面问过的问题就跳过不再问了,面试官人很好,对于我不是很会的问题,都说没事
(1)集合框架包含哪些?collection包含哪些,队列,listl和set。问list的实现类哪些?arraylist的底层实现方法?我回答,数组实现。数组的初始长度多少?我回答10。arraylist和linkedlist的区别?后者线程安全,底层是双向链表实现。
(2)使用过什么框架,spring、springboot?我回答,springboot,但是只是使用了,对于底层不是太了解,就是使用注解方法,使编程更方便。
(3)使用过什么数据库?关系型数据库和非关系型数据库的定义、区别?我回答使用过mysql,关系和非关系的却别简单描述了一下,因为自己也不是特别清楚。初一到sql的题目给我。
表T
T(name,score,time),表中存着学生一学期内,各科目的成绩
问:学生在t1-t2时间段内,所有成绩总<=20的人,打印出他的名字,总分数,并且按照总分数成金降序排序
我:说不用太拘谨,里面时间戳和其他格式问题,能解决问题大概方法写出来就行了
select name,sum(score) from table where t1<time<t2 group by name having sum(score)<=20 order by sum(score) desc;
后来问了面试官,这对不对啊,他说,你回去写一下测试测试
(4)给个场景,spring中,接口interface A 存在很多实现类(B,C,D,E,F...)都实现了接口的方法,现在,要每个子类调用了接口中的某个方法时,要求向数据库中执行插入语句,表明调用了这个方法的记录。
额,这和上一个面试官问的问题一样。我说在spring中的话用AOP就行了,或者动态代理。面试官让我用动态代理写一遍,我说我动态代理好久没写了,他说你试试,写不出来没事,我就大概写了一下,最后实在记不清楚了,就和面试官说了写一下想法。面试官很nice
(5)泛型的作用,为什么要有泛型?
(6)最近都是怎么学习的?我就说看书,博客和教学视频课程。
然后结束,让我都等hr面。
三、hr面
(1)自我介绍
(2)对于顺丰科技的认识。(答的不好)
(3)自己的职业规划
(4)自己有什么优点,哪些还存在不足。觉得自己的学习们能够力怎么样
(5)目前有没有拿到offer或者等结果的企业
(6)预期薪资
(7)有什么想问的
总结:一二面的专业面官人很nice,态度很柔和,主要围绕你简历上提到的东西提问,没有问题太多尖锐的问题。hr面感觉自己表现的有点差,希望能拿到个offer。
顺丰科技面试-java开发的更多相关文章
- 2017年11月23日**科技面试java工程师面试总结
从整个面试看了,表现并不理想,有很多不足. 1.关于手机页面闪现问题的处理.从原理上观察,页面闪现是因为异步请求导致的.在进入页面中首先会加载默认的东西,此时也会访问数据库端,会用ajax判断是否满足 ...
- 2019最新最全Java开发面试常见问题答案总结
2019最新最全Java开发面试常见问题答案总结 马上准备9月份出去面试Java开发,自己学习丢西瓜捡芝麻,学了的都忘了,所以有机会自己做个学习笔记,摘录自各个博文以及总结. 1.JAVA面向对象的特 ...
- Java开发笔记(六十六)映射:HashMap和TreeMap
前面介绍了两种集合的用法,它们的共性为每个元素都是唯一的,区别在于一个无序一个有序.虽说往集合里面保存数据还算容易,但要从集合中取出数据就没那么方便了,因为集合居然不提供get方法,没有get方法怎么 ...
- Java开发面试总结
Java开发面试总结.. ----------------------- java 基础知识点这一块: 1.面向对象的三大特征.(继承,封装,多态) 1.1 在什么样的场合下面会使用到继承 1.2 什 ...
- 知名互联网公司校招 Java 开发岗面试知识点解析
天之道,损有余而补不足,是故虚胜实,不足胜有余. 本文作者在一年之内参加过多场面试,应聘岗位均为 Java 开发方向.在不断的面试中,分类总结了 Java 开发岗位面试中的一些知识点. 主要包括以下几 ...
- Java开发岗面试知识点解析
本文作者参加过多场面试,应聘岗位均为 Java 开发方向.在不断的面试中,分类总结了 Java 开发岗位面试中的一些知识点. 主要包括以下几个部分: Java 基础知识点 Java 常见集合 高并发编 ...
- 最近面试 Java 后端开发的感受!
阅读本文大概需要 4.3 分钟. 首发:cnblogs.com/JavaArchitect/p/10011253.html 上周,密集面试了若干位Java后端候选人,工作经验在3到5年间.我的标准其实 ...
- 最近面试java后端开发的感受:如果就以平时项目经验来面试,通过估计很难——再论面试前的准备
在上周,我密集面试了若干位Java后端的候选人,工作经验在3到5年间.我的标准其实不复杂:第一能干活,第二Java基础要好,第三最好熟悉些分布式框架,我相信其它公司招初级开发时,应该也照着这个标准来面 ...
- JAVA开发工程师面试(1)
我已经有很长一段时间没有更新博客了,难道是博主我变懒惰了吗?哎,这样可不行啊,我还有好多知识要学习,要和大家分享.以后我需要更加努力,改掉自己的惰性.本人文采不怎么样,只能是把自己所想的说出来,想和大 ...
随机推荐
- linux系统,CentOs7加新硬盘
1,打开Vmware软件,添加一块新的硬盘,然后一直下一步. 2.通过CRT等终端软件,连接到机器 [root@Mysql ~]# lsblk //检查一下硬盘分区信息 [root@Mysql ...
- [BAT] cmd 管理员权限 右键菜单 运行
将下面保存为 *.reg Windows Registry Editor Version 5.00 [HKEY_CLASSES_ROOT\Directory\Background\shell\runa ...
- 《精通并发与Netty》学习笔记(07 - 基于Thrift实现Java与Python的RPC调用)
上节我们介绍了基于Thrift实现java与java的RPC调用,本节我们基于Thrift实现Java与Python的RPC调用 首先,修改data.thirft文件,将命名空间由java改为py n ...
- 【并行计算-CUDA开发】英伟达硬件解码器分析
这篇文章主要分析 NVCUVID 提供的解码器,里面提到的所有的源文件都可以在英伟达的 nvenc_sdk 中找到. 解码器的代码分析 SDK 中的 sample 文件夹下的 NvTranscoder ...
- 【Matlab开发】matlab删除数组中符合条件的元素与散点图绘制
[Matlab开发]matlab删除数组中符合条件的元素与散点图绘制 声明:引用请注明出处http://blog.csdn.net/lg1259156776/ matlab删除数组中符合条件的元素 如 ...
- bootstrap-table的一些配置参数例子
$('#reportTable').bootstrapTable({ method: 'post', url: '/qStock/AjaxPage', dataType: "json&quo ...
- ajax提交 的编码小结
今天用ajax的post方法提交数据给webservice,由于有email的缘故发现,注册方法调用总是报错,打开报文一看提交的 发现@符号被变成了%40 , abc@126.com 即abc%401 ...
- DP+线段树维护矩阵(2019牛客暑期多校训练营(第二场))--MAZE
题意:https://ac.nowcoder.com/acm/contest/882/E 给你01矩阵,有两种操作:1是把一个位置0变1.1变0,2是问你从第一行i开始,到最后一行j有几种走法.你只能 ...
- 微信小程序 路由跳转 异步请求 存储数据,微信登录接口
1小程序路由跳转 wx.switchTab(Object object) 这里的tabBar是底下的导航栏指定的页面 跳转到 tabBar 页面,并关闭其他所有非 tabBar 页面 tabBar l ...
- Centos 7.3 搭建php7,mysql5.7,nginx1.10.1,redis
一.安装nginx 更新系统软件(非必要) # yum update 安装nginx 1.下载nginx # wget http://nginx.org/download/nginx-1.15.2.t ...