顺丰科技java面经
一面:
1.问项目
2.基本数据类型
int、long、short、byte、float、double、char、boolean
3.什么时候用包装器类型,什么时候用基本数据类型
当和集合联合使用的时候用包装器类型,当值允许为null时用包装器类型,当使用反射时用包装器类型。其余时候用基本数据类型。
4.异常和错误?捕获异常后,什么时候直接处理,什么时候抛出去给上一层处理?
异常和错误都继承了Throwable类,错误是系统自带的不需要程序员去处理,而异常分为运行时异常和非运行时异常。运行时异常通常是逻辑问题,是不受检异常,程序中可以选择处理,也可以选择不处理。非运行时异常是受检异常,必须由throws声明抛出,不处理会编译不通过。由外界不稳定性引起的异常,就可抛出。考虑出现异常的责任,如果在系统外,就该抛出。
5.抽象类和接口的区别?什么时候使用抽象类而不是接口?
- 抽象类单继承,接口多实现。
- 抽象类有普通方法,接口只有抽象方法。
- 抽象类有构造方法和静态方法,但不可用abstract修饰。
- 接口中默认成员变量修饰符:public static final,默认方法:public abstract
- 抽象类中的方法修饰符可以用public、protected;接口中的方法只能是public
- 抽象类表示的是"is-a”关系,而接口表示的是“like-a”关系。抽象类和其子类应该是一般和特殊的关系,接口是为其实现类提供一系列规则。
- 实现接口的类必须实现它的全部方法,但继承抽象类的子类可以有选择的继承。
- 当需要为一些类提供一些共有的实现代码时,用抽象类比较好。使用抽象类是为了代码的复用,使用接口是为了实现多态性。
6.数据库查询速度慢时用什么去检查为什么慢?怎么优化?
定位方法:第一种:
show full processlist;
show variables like ‘%query%’; //查询query相关的参数设置
set global long_query_time=2; //设置最长查询时间为2
set global slow_query_log= on; //将query日志打开
set global slow_query_log_file = ‘地址’ //设置日志的存储位置
第二种:
直接在每句sql前加explain
优化方式: - 更改查询字段
- 索引
- 减少表之间的关联
7.什么情况下用索引?
频繁作为查询条件的字段应该建立索引,多表连接查询时连接列创建索引,需要经常GROUP BY和ORDER BY的列。
8.Linux看过吗?
9.http和https的区别?
- https需要安全证书,大部分证书都不是免费的。
- http是超文本传输协议,信息是明文传输的,https是ssl加密文本传输协议。
- http和https使用的端口不一样,前者是80,后者是443。
- http的连接是简单的、无状态的。https是基于http和ssl协议构建的可进行加密传输、身份认证的网络协议,比http安全。
10.http和tcp的关系
http是基于tcp协议的。
HTTP的责任是去定义数据,在两台计算机相互传递信息时,HTTP规定了每段数据以什么形式表达才是能够被另外一台计算机理解。而TCP所要规定的是数据应该怎么传输才能稳定且高效的传递与计算机之间。
11.post和get
12.讲讲四次挥手?tcp四次挥手中客户端ack断掉了没有发出去怎么办?
客户端发送完ACK包后可能因为网络存在问题导致无法及时到达服务端,那么一定时间后服务端会启动重发机制再次发送FIN包,如果客户端早早就关闭了连接,那么服务端将不再有可能收到Ack确认包。
13.用户、角色、权限。数据库该怎么设计?
二面:
1.问项目
2.list和set是有序的吗
list有序,set无序。
3.多线程的实现方法?
4.具体讲讲sychronized?常用场景?
- 修饰普通方法,锁的是实例对象。
- 修饰静态方法,锁的是类。
- 修饰代码块,锁的是括号内的对象。
5.项目里具体用过哪个多线程实现?(我答的ThreadLocal)
6.spring、springMVC、springboot的区别
ioc用了哪些
7.为什么要用spring boot?
8.了解哪些设计模式?项目中用过什么设计模式?
权限,拦截器,用了观察者模式。
用了单例线程池。
用了工厂模式,返回状态码。
AOP日志,代理模式。
9.代理模式具体实现过程?
10.数据库几亿行时怎么优化?怎么垂直优化?
11.spring boot中用过哪些starter
12.给乱序数组排序,map、set的子类里有哪些是自主排序的?
顺丰科技java面经相关推荐
- 校招实习面试实战,顺丰科技Java工程师面试复盘总结
备战春招,校招实习面经分享,拿Java开发工程师offer~~ 本系列文章包括Java.算法.计算机网络.数据库.操作系统等等,本篇介绍面试顺丰科技[Java工程师]岗位的题目,复盘解析及心路历程. ...
- 顺丰科技java有笔试吗_顺丰科技笔试回忆
顺丰笔试题不多,只有选择题和简答题,45min考完,现在想想,选择题已经忘了, 大概的有:给你两个数据库字段,判断是哪个范式.java编译完后会生成什么代码?(type code) 还有考了c语言的一 ...
- 顺丰科技JAVA二面面经
本次是9月26号,长沙场的现场面试,在一个酒店里面试的. 一面 1.自我介绍 2.collection接口有哪些分支(答:List,Set) 3.List,Set下的分支,如ArrayList,Lin ...
- 顺丰科技高级java面试_顺丰科技-Java笔试编程题-均ac
import java.util.*; public class Main { private static int n; //人数 private static int m; //语言数 p ...
- 顺丰科技视频面试 -Java研发
牛客网上看到有人发的顺丰科技Java研发的面经,但是内容与大数据较为相关,进行答案整理. 1.关系型数据库了解吗? 关系型数据库: SQLite.Oracle.mysql 特性: 1.关系型数据库,是 ...
- 顺丰科技面试-java开发
顺丰科技的面试官感觉人都挺随和,总共经历三面,两轮技术面,一轮hr面. 一.专业面一 主要是对着我的简历上的东西问,我的一个项目经历,两个实习上面以及自己提到会的技能展开的提问. (1)自我简介 (2 ...
- 顺丰科技数据库中间件研发工程师面试经历
最近一段时间考虑换个工作,通过猎头的推荐,发现深圳顺丰科技有个MyCat中间件研发工程师的职位挺适合我的,于是乎让她推荐了下简历,约了面试.本次面试分为电话面试和现场面试.电话面试主要考察技术,现场面 ...
- 顺丰科技2018校园招聘在线笔试题
今天做了顺丰科技的在线笔试题,选择题方面感觉考得很基础,有数据结构.编译原理方面的题目,以及设计模式的题目.编译原理的内容基本忘记了,设计模式也没有进行深入的学习,所以这两块大的并不是太好.再有就是排 ...
- 【面试题分析】第九篇 顺丰科技安卓客户端面经【2轮技术+1轮HR面】(21届秋招)
参考面经:顺丰科技安卓客户端面经[2轮技术+1轮HR面](21届秋招) 第一题:http和https的区别(老HTTP了) 第二题:Http request的几种类型(HTTP请求报文的常用方法) 第 ...
最新文章
- 未能加载文件或程序集“Antlr3.Runtime”或它的某一个依赖项。参数错误。 (异常来自 HRESULT:0x80070057 (E_INVALIDARG))解决方法。...
- go benchmark 性能测试 单元测试 基准测试 使用方法详解
- 了解这些坑,再也不会出现诡异的BUG了~
- 【linux】ubuntu下crontab无效解决方法
- 2017.9.25 Xor 失败总结
- 优美的js代码,拿去玩~
- CentOS 7伪分布式方式安装Hadoop-2.6.0-cdh5.6.0并且通过主机浏览器访问hadoop工作台
- 手机应用的照相录像功能,为什么转到后台就不能工作了?
- 小说app开发—小说app搭建需要注意什么问题?
- VC++ 查看系统进程,获取进程关联的DLL列表
- 夜神模拟器连不上 adb 问题解决方法
- android 应用广告业,安卓应用商店APP推广:CPD广告详解
- 抽象数据类型的三元组C语言,试仿照三元组的抽象数据类型分别写出数据类型复数和有理数的定义?...
- 基于python的购物比价_python比价
- 创业失败那天我在做什么
- mysql如何修改root用户的密码
- 整理的一些建站中常见的问题与解决代码
- GPRS、433、Wifi、Zigbee模块概念和区别
- ftp与lftp命令使用
- 如何制作毕业论文答辩PPT模板?