• Stars
    star
    135
  • Rank 269,297 (Top 6 %)
  • Language
    Java
  • License
    Apache License 2.0
  • Created over 5 years ago
  • Updated over 1 year ago

Reviews

There are no reviews yet. Be the first to send feedback to the community and the maintainers!

Repository Details

Java interview-高级Java面试题2019

java-interview

Senior Java engineer interview exams in 2019

高级Java工程师面试题2019

资深Java工程师复习计划

资深Java工程师复习计划-2019

面试题目

面试题来自本人的程序员朋友面试经历,经本人和开源爱好者汇总


  • 虎扑体育
一、选择题

1. 以下算法中能恢复明文的加密算法有()
A. BASE64
B. RSA
C. AES
D. SHA256
E. DES
F. Blowfish

答案(ABCEF)
解析 
A. BASE64属于一种编码方式,可以逆向编码,也就可以恢复明文   (可逆)
B. RSA 由 RSA 公司发明,是一个支持变长密钥的公共密钥算法,需要加密的文件块的长度也是可变的(非对称加密)
可以恢复明文  (可逆)
C. AES(Advanced Encryption Standard):高级加密标准,是下一代的加密算法标准,速度快,安全级别高; (可逆)
D. SHA256 是一种hash加密(  不可逆)
E. DES (Data Encryption Standard) 对称加密  (可逆) 
F. Blowfish算法是一个64位分组及可变密钥长度的对称密钥分组密码算法 (可逆)

结论:除了Hash加密算法不可逆,其它的对称加密和不对称加密还有字符编码算法都是可逆的算法。
Hash算法特别的地方在于它是一种单向算法,用户可以通过Hash算法对目标信息生成一段特定长度的唯一的Hash值,却不能通过这个Hash值重新
获得目标信息。因此Hash算法常用在不可还原的密码存储、信息完整性校验等。
常见的Hash算法:MD2、MD4、MD5、HAVAL、SHA、SHA-1、HMAC、HMAC-MD5、HMAC-SHA1、SHA-256

二、判断题
1. 如果两台主机的MAC地址相同,则无法互相通信()
答案: 未知
2. 在设计网站的登录功能的时候,为防止密码在传输过程中被非法窃取,可以通过MD5算法在浏览器端加密后传到服务器端。
服务器端通过把密码进行解密后与数据库中存储的密码进行比对一致则登录成功()
答案:错误
3. 一个进程中有多个线程,每个线程没有独立的地址空间()
答案:错误
4. MySQL的InnerDB和MyISAM引擎都支持事务()
答案:错误
5. 数据库索引可以提高增删改查等操作的速度()
答案:错误
6. 快速排序在平均情况下比冒泡排序快,不过在某些情况下冒泡排序可能比快速排序快()
答案:正确

三、问答题
1、生成10个[100,200]的随机数(优先使用JDK8新特性)


2、将以下字符串按逗号分割成List,去除每个成员项首位空格,过滤空白项,合并重复项
,逆序排列。(优先使用JDK8新特性)
String s = " z111,c888,n222,,,g000, t333,a999,c888 ,p000 ,z111 ";


3、一天有一个年轻人来到王老板的店里买了一件礼物这件礼物的成本是18元, 标价是21元。结果这个年轻人
掏出100元要买这件礼物。 王老板当时没有零钱,用100元向街坊换了100元的零钱,找给年轻人79元。但是街坊
发现那个100元是假钞,老板无奈还了街坊100元。现在问题是:王老板在这次交易中国呢到底损失了多少钱?
答案:答案不难,让读者自己体会😄




  • 杭州连连支付

    两个经理没有问太多细节,可能他们是主管,都不是写代码的。 只问了下项目宏观的问题。感觉并不是真的招人。




  • 浙江大华

    • sql查询如何避免全表扫描

    • Feign负载均衡策略是什么?

    默认是轮询

    • mysql的master与keepalived怎么做HA方案

  • 钱兔网络

    面试官没有问技术问题。都是写宏观的问题。


  • 海康威视-仓储管理部

    • 索引的分类有哪几种?

    innerdb只有两种索引:btree和fulltext)

    • sql语句的优化策略

  • 传化智联

    • 索引的三种

    BTREE (B+TREE结构, 适合于数字和varchar) FULLTEXT (全文检索,适合text类型) HASH 只存在于memory引擎和nda引擎)

    • sql语句的优化策略

    • 如何避免全表查询

    • 集群的时候如果处理"脑裂"现象?

    zk脑裂, mysql集群的脑裂

    • 面试被问到“classLoader双亲委托与类加载隔离”

    • spring+mybatis注解方式为什么mybatis的dao接口不需要实现类?

    答案:用用了jdk的动态代理机制,比如InvocationHandler+Proxy


  • 挖财

    • redis跳表 skiplist

    • cms垃圾收集器

    • G1垃圾收集器

    • 如何编写一个spring-boot-starter组件, (类似于mybatis-spring-boot-starter)?

    答案: resources下面增加一个文件夹META-INF,里面增加一个文件spring.factories 然后在自己的组件包中定义一个用@Configuration来定义的类,还有Configure对应的bean 想情见https://github.com/liushaoming/jframe 里 的jframe-spring-boot-starter


  • 自己查漏补缺

    答案: exists与in的区别和各自的应用场景是什么? having的作用是什么? truncate与delete的区别. Oracle的over(), partition by的使用。partition by与group by的区别。

    • valotile关键字有什么作用

    • duboo或者spring cloud微服务调用超时应该怎么处理

    • sql注入与防止sql注入的方法


  • 京东金融

    • Java基础
    • 泛型,用过泛型吗, 泛型的原理
    • 封装继承多态你是怎么理解的
    • hashCode()和equals()方法可以只写一个吗?只写一个有什么问题
    • 多线程 future在什么场景下使用?
    • 数据库 数据库用的什么,mysql, 联合索引的有效性,创建一个含有3个字段的索引(A,B,C), where A 有效吗? where A and B 有效吗?。。。
    • 框架 Spring-cloud如何保证幂等性?
    • 设计模式 写一下几种单例模式, 饿汉式,懒汉式,有没有线程安全的问题;
    • 算法 写一个熟悉的排序算法


  • 小牛互娱

    答案 : new ReentrantLock(true)得到的是公平锁,内部对未获取到锁的线程进行排队

    new ReentrantLock(false)得到的非公平锁。 首先基于CAS操作(CAS都是非公平的),如果抢到来。就锁定成功,否则进入排队。成为非公平锁。

    • finalize()方法是什么

    答案: finalize()方式是Object内置的方法,在JVM GC操作前会回调的。


更多Java面试题

部分题目的答案和实例代码在陆续整理中,你们也可以贡献你们的答案。

更多面试题,广大程序员们,欢迎你们star此项目。

欢迎你们提交Pull Request以提交你们的题目

More Repositories

1

jseckill

Java秒杀 抢购 (Seckill based on Spring Boot)
Java
769
star
2

star-zone

⭐星座空间App(社交类App)项目源码,包括Java后台、Android、管理后台的代码。自主研发了数据库分表、token权限认证
Java
223
star
3

bootpush

📶即时消息推送服务(即时通讯),基于Netty- Instant Messaging push service based on Netty
Java
153
star
4

distarch

Java分布式系统架构。包括分布式锁,一致性哈希,分库分表,单点登录,缓存,消息队列等
Java
141
star
5

jpassport

token登录模块, SpringBoot2. App的用户登陆后台
Java
108
star
6

containerx

⚡简单的Java依赖注入框架,代码量少,实现了依赖注入和AOP。适合Spring源码的初学者掌握其核心原理
Java
77
star
7

flycache

一致性哈希的redis分片存储 (Redis sharding by consistent-hashing)
Java
58
star
8

microsvc

Spring Cloud 2.X 最新实践. Gateway, Consul
Java
47
star
9

fly-auth

Java JWT解决分布式环境下的认证和session一致性问题
JavaScript
45
star
10

flylib-boot

spring boo应用的通用架构(全局异常处理等机制)
Java
45
star
11

frpc

Flylib RPC framework基于protobuf编码协议
Java
41
star
12

algorithm4j

用java实现的算法 Algorithm implemented by Java
Java
36
star
13

jframe

揭秘开发Java开源框架需要用到哪些技术。{name}-spring-boot-starter, ConnectionPool, ThreadLocal, 动态代理等的实现
Java
36
star
14

apidoc4j

APIDOC java implementation via ANTLR
Java
32
star
15

star-zone-android

星座空间-Android客户端代码
Java
30
star
16

guardkit

基于Java的监控框架
Java
25
star
17

fastsso

Spring Boot实现单点登录. Redis, JWT
Java
23
star
18

starzone-doc

22
star
19

svctracer

spring cloud micro-service tracer. 跟踪微服务的调用链,Spring Cloud Sleuth获取调用链+zipkin显示
Java
9
star
20

concurrentapp

多线程的核心技术Demo. 这些例子,都是深入到技术底层。并发技术的顶尖高手必备
Java
4
star
21

android-bootlib

Android classic mini lib
Java
4
star
22

netty-im

Java
3
star
23

dubbo-demo

Demo for senior Dubbo application
Java
3
star
24

cloud-lib

Spring Cloud Gateway + JWT
Java
3
star
25

bootblog

2
star
26

drouter

Java
2
star
27

bootsrc.github.io

HTML
1
star