蚂蚁
Java
三面
1.
项目介绍
2.
你们怎么保证
Redis
缓存和数据库的数据一致性?
3. Redis
缓存雪崩?击穿?穿透?
4.
你熟悉哪些消息中间件
,有做过性能比较?
南京-软通动力-Java初级
1
、锁可以锁在哪里?
2
、怎么利用反射获取类中的对象?
3
、
HTTP
和
https
区别?
4
、谈谈你对
TCP / IP
协议的了解
5
、说说
Aop
和
IOC
的应用
6
、
Spring
中
bean
是线程安全的吗?
7
、
Maven
中
package
和
install
区别
8
、遇到过哪些设计模式?
9
、谈谈简单工厂和抽象工厂的区别
10
、说说你常用的
Linux
基本操作命
令
11
、谈谈 Currenthashmap 的扩容机制
厦门-中软国际-Java初级
1、java 中==和 equals 和 hashCode 的区别
2、int、char、long 各占多少字节数
3、int 与 integer 的区别
4、谈谈对 java 多态的理解
5、String、StringBuffer、StringBuilder 区别
6、什么是内部类?内部类的作用
7、抽象类和接口区别
7.1、抽象类的意义
7.2、抽象类与接口的应用场景
7.3、抽象类是否可以没有方法和属性?
7.4、接口的意义
8、泛型中 extends 和 super 的区别
9、父类的静态方法能否被子类重写?静态属性和静态方法是否可以被继承?
10、进程和线程的区别
11、final,finally,finalize 的区别
12、序列化 Serializable 和 Parcelable 的区别
13、谈谈对 kotlin 的理解
14、string 转换成 integer 的方式及原理
上海-拼多多-Java高级
1
、并发编程三要素?
2
、实现可见性的方法有哪些?
3
、多线程的价值?
4
、创建线程的有哪些方式?
5
、创建线程的三种方式的对比?
6
、线程的状态流转图
7
、
Java
线程具有五中基本状态
8
、什么是线程池?有哪几种创建方式?
9
、四种线程池的创建:
10
、线程池的优点?
11
、常用的并发工具类有哪些?
12
、
CyclicBarrier
和
CountDownLatch
的区别
13
、
synchronized
的作用?
14
、
volatile
关键字的作用
15
、什么是
CAS
16
、
CAS
的问题
17
、什么是
Future
?
18
、什么是
AQS
19
、
AQS
支持两种同步方式:
20
、
ReadWriteLock
是什么
21
、
FutureTask
是什么
22
、
synchronized
和
ReentrantLock
的区别
23
、什么是乐观锁和悲观锁
24
、线程
B
怎么知道线程
A
修改了变量
25
、
synchronized
、
volatile
、
CAS
比较
26
、
sleep
方法和
wait
方法有什么区别
?
27
、
ThreadLocal
是什么?有什么用?
28
、为什么
wait()
方法和
notify()/notifyAll()
方法要在同步块中被调
用
29
、多线程同步有哪几种方法?
30
、线程的调度策略
31
、
ConcurrentHashMap
的并发度是什么
32
、
Linux
环境下如何查找哪个线程使用
CPU
最长
33
、
Java
死锁以及如何避免?
34
、死锁的原因
35
、怎么唤醒一个阻塞的线程
36
、不可变对象对多线程有什么帮助
37
、什么是多线程的上下文切换
38
、如果你提交任务时,线程池队列已满,这时会发生什么
39
、
Java
中用到的线程调度算法是什么
40
、什么是线程调度器
(Thread Scheduler)
和时间分片
(TimeSlicing)
?
41
、什么是自旋
42
、
Java Concurrency API
中的
Lock
接口
(Lock interface)
是什么?对
比同步它有什么优势?
43
、单例模式的线程安全性
44
、
Semaphore
有什么作用
45
、
Executors
类是什么?
46、线程类的构造方法、静态块是被哪个线程调用的
上海-携程-Java高级
1.
描述一下
JVM
加载
Class
文件的原理机制
?
2. 什么是类加载器?
3. 类加载器有哪些?
4. 什么是 tomcat 类加载机制?
5、类加载器双亲委派模型机制?
6. Java 内存分配?
7. Java
堆的结构是什么样子的?
8. 简述各个版本内存区域的变化?
9.
说说各个区域的作用?
10. Java
中会存在内存泄漏吗,简述一下?
11. Java
类加载过程?
12.
什么是
GC?
为什么要有
GC
?
13.
简述一下
Java
垃圾回收机制?
14.
如何判断一个对象是否存活?
15.
垃圾回收的优点和原理,并考虑
2
种回收机制?
基本原理是什么?
16.
深拷贝和浅拷贝?
17.
什么是分布式垃圾回收(
DGC)?它是如何工作的?
深圳-OPPO-Java高级
1.
说说你的⼯作经历?
2.
项⽬主要负责哪⼏个模块?
3.
画出你项⽬的结构图
4.
Eureka
是如何进⾏服务注册的?
5.
如果服务宕机或者⽆法访问了,我还去请求该服务,
Eureka会怎么处理? 会有什么现象?
6.
谈谈
Eureka
的保护机制
7.
Ribbon
的负载均衡是⾯向服务内部还是外部的?
8.
Ribbon
如何实现负载均衡的?
9.
如果没有
Eureka
,我能直接通过
Ribbon
进⾏服务请求吗?
10.
Hystrix
如何实现熔断?
11.
当服务⽆法访问时,是直接熔断还是降级?
12.
怎么样才会出现熔断?
13.
在
Springcloud中,消费者调⽤提供者的流程是如何的?请画图 springcloud
的⼯作原理
14.
Redis
的集群⽅式有哪些?
15.
如果你原来读取的
Redis中的数据,它的数据的结构发⽣了变化,如何在 不改变代码的情况下进⾏处理,使下游业务不受影响?
16.
Redis
的持久化⽅式有哪些?说说他们的具体实现、
17.
使⽤
Redis
的过程中有没有遇到什么问题?
18.
Redis
的内存回收机制有哪些?
19.
Redis
的过期策略有哪些?简单介绍下不同策略
20.
说说
Redis
的淘汰策略?淘汰的算法可以修改或者⾃⼰重写吗?
21.
你们的项⽬中消息中间件⽤的是什么?
22.
你们的
Rabbit
集群是怎么部署的?
23.
Rabbit
集群之间的数据是如何同步的?同步⽅式还是异步⽅式?
24.
⼀个队列中的数据你们是存放在⼀台机⼦上还是多台机⼦上?为什么?
25.
RabbitMQ
内部结构是怎么样的?请画出
RabbitMQ
的架构图
26.
你们公司的数据库有分库分表吗?如何实现的?
27.
Mysql
的索引是基于什么?
28.
说说
B+
树
29.
使⽤⾃增
ID
和
UUID
作为主键有什么不同?
30.
说说数据库的事务隔离级别有哪些?
31.
在代码中,我们如何实现事务?
32. 如果在⼀个事务中,代码业务流程很⻓,会有什么问题吗?为什么会出 现这种问题?
33.
使⽤
volatile关键字的时候有遇到过什么问题吗?为什么会出现这种问 题?
34.
请说说
volatile
的底层实现原理
35.
如何创建线程池?有什么参数?线程池的实现原理
36. 你有什么问题想问我们的吗?
深圳-丰巢科技-Java高级
1.bio
与
nio
的区别
2.select
与
poll
的区别
3.zookeeper
的⼯作原理
4.cap
理论
5.
⼆段式满⾜
cap
理论的哪两个理论
6.
线程池的参数配置,为什么
java
官⽅提供⼯⼚⽅法给线程池
7.
分布式框架
dubbo
的好处,不⽤
dubbo
可不可以。为什么要使⽤分布式
8.
七个垃圾回收器之间如何搭配使⽤
9.
接⼝限流⽅案
10.ConcurrentHashMap
使⽤原理
11.
解决
map
的并发问题⽅案
12.
什么是协程,以及实现要点
13.lru cache
使⽤
hash map
的实现(算法)
14.
图的深度遍历和⼴度遍历(算法)
15.
基本排序(算法)
16.
设计模式的使⽤
17.java 8
流式使⽤
18.
说说
b+
树?
19.
内存屏障与
volatile
:
20.java
域的概念
21.
分布式设计领域的概念
22.
如何实现双
11
的购物限流(
redis
实现⽅案)
23.mysql
调优
24.cdn
(异地多活)
25.
进程之间的通信⽅式
26.tcp/ip
协议、
http
协议
27.
写⼀个
redis
分布式锁:
28.spring 7
种事务的传播⾏为:
29.
分布式下
down
机的处理⽅案(⼼跳检测)
30
、分析下分布式强⼀致性、弱⼀致性、最终⼀致性?
31
、
dubbo
与
zookeeper
两者作为注册中⼼的区别,假如注册中⼼挂了,消费者还能调⽤服务吗,⽤什么调⽤的
32
、
dubbo
的原理图(画出注册中⼼,消费者,⽣产者的关系图,并说出每个⻆⾊的作⽤)
33
、项⽬中有没有⽤到多线程?
34
、
HashMap
的底层原理(包括底层数据结构,怎么扩容的)
35
、
ConcurrentHashMap
的原理
36
、 分布式锁的实现
37
、分布式
session
,如何保持⼀致
38
、消息中间件都⽤到哪些,他们的区别
1.
我们知道
hashmap
线程不安全,那⽤什么类可以代替它保证线程安全呢?他们⼜是如何实现线程安全的呢?
2.
说说⼏种
GC
机制?
3.
说说⼀致性
hash
?
4.
mybatis
基础知识;
5.
mysql
基础知识;
6.
mysql
单表达到多少数据量需要分库分表?
7.
hibernate
基础知识。
8.
说说
kafka
的原理,为什么能保证这么⾼的吞吐量?
9.
对
webservice
有什么了解?
10.
说说你们公司
git
分⽀管理⽅案?
11.
mysql
如何进⾏分表分库?
12.
你们如何和前端进⾏接⼝联调?
13. 说说你平时遇到的重⼤难题或者挑战,以及你解决问题的思路和流程。 平时关注⼀下公司线上问题的解决⽅案。
深圳-乐信-Java高级
1.
画出项⽬的架构图
2.
所处⾃⼰负责的业务模块,其中⽤到了哪些技术点?
3.
如何实现最终⼀致性分布式事务?
4.
索引的
B+
树结构是咋样的?
5.
哪些情况下索引会失效?除了加索引优化查询,还有哪些⽅法?
6.
说说⾃⼰了解的设计模式?
Spring中⽤到了哪些设计模式?⾃⼰有⽤过哪些设 计模式吗?
7.TCP
的三次握⼿四次挥⼿机制?
8.Https
原理?
9.Redis
的数据类型有哪些?与
Memcached
的区别?
10.
消息队列有⽤到吗?具体在项⽬中是怎么⽤的?如何保证消息的可靠传递?
1.
说说
java
集合,每个集合下⾯有哪些实现类,及其数据结构?
2.
介绍⼀下红⿊树、⼆叉平衡树。
3.
jdk1.8
中
ConcurrentHashMap size
⼤于
8时会转化成红⿊树,请问有什么 作⽤,如果通过
remove
操作,
size
⼩于
8
了,会发⽣什么?
4.
说说
java
同步机制,
java
有哪些锁,每个锁的特性?
5.
说说
volatile
如何保证可⻅性,从
cpu
层⾯分析。
6.
spring
加载
bean
的顺序?
7.
哪些对象会被存放到⽼年代?
8.
什么时候触发
full gc?
9.
jvm
中哪些地⽅会出现
oom
?分别说说
oom
的可能原因?
10.
我们如何发现
oom
来⾃
jvm
中哪个区域?
11.
有没有
jvm
调优经验?调优⽅案有哪些?
12.
平时有没有看过什么源码,请画出来。
13.
有没有写过或者看过
custom classloader
?
14.
介绍你最近做的⼀个项⽬,画出框架图并分析业务流程。
15. 平时看过那些书?
深圳-商汤科技-Java高级
1.
简历写什么问什么,注意所⽤技术产品的同类产品⽣态及对⽐。
2.kafka
数据分区和消费者的关系,
kafka
的数据
offset
读取流程,
kafka
内部如何保证顺序,结合外部组件如何保证消费者的顺序
3.cms
垃圾回收机制
4.springcloud
各个组件功能,内部细节,与
dubbo
区别,
dubbo
架构,
dubbo
负载策略
5.mapreduce
原理
6.nio
,
bio
,
sellector/epoll
,
aio
,
netty
⾃带编解码器,
netty
优势,
java
内存模型
7.akka
模型
8.java arraylist
,
linkedlist
区分及实现原理,
hashmap
和
concurrenthashmap
区分及实现原理,
concurrenthashmap 1.7
和
1.8
区分,
实现细节,
linkedhashmap
排序原理,应⽤如何保证数据幂等
9.web.xml listener
,
filter
,
servlet
加载顺序。如何不再
web
,
xml
中配置来加载
filter
10.
⽆穷数就
top K
问题,提供多个⽅案
11.a
,
b
,
c
三张表,做关联查询,如何优化,可做外键,只在
c
表加
a
表外键即可。
12.CourrentHashMap JDK1.7
和
JDK1.8
有什么区别?
13.
线程
a
,
b
,
c
,
d
运⾏任务,怎么保证当
a
,
b
,
c
线程执⾏完再执⾏
d
线程
?
14.
分布式系统中如何保证数据的⼀致性?
15.
拆分微服务应该注意哪些地⽅,如何拆分?
16.SpringCloud
全家桶包含哪些组件?
17.
有没了解
Docker
,
Docker
和虚拟机有什么区别?
18.
同⼀个宿主机中多个
Docker
容器之间如何通信?多个宿主机中
Docker
容器之间如何通信?
19.
⾼并发系统如何做性能优化?如何防⽌库存超卖?
20.
如何保证服务幂等性?
深圳-银盛支付-Java中级
1.
说说
springcloud
的⼯作原理
2.
⽤什么组件发请求
3.
注册中⼼⼼跳是⼏秒
4.
消费者是如何发现服务提供者的
5.
多个消费者调⽤同⼀接⼝,
eruka
默认的分配⽅式是什么
6.
说说常⽤的
springboot
注解,及其实现?
7.
spring
的事务注解是什么?什么情况下事物才会回滚
8.
说说
spring
事物的传播性和隔离级别
9.
mysql
的引擎有什么?他们的区别
10.
innodb
如何实现
mysql
的事务
11.
mysql
索引谈⼀谈
12.
说说
b+
树的原理
13.
让你设计⼀个索引,你会怎么设计
14.
还问了
git
和
svn
的区别
15.
git
命令的⼀些底层原理以及流程