杭州-阿里云-Java实习生
- List 和 Set 的区别
- HashSet 是如何保证不重复的
- HashMap 是线程安全的吗,为什么不是线程安全的(最好画图说明多线程环境下不安全)?
- HashMap 的扩容过程
- HashMap 1.7 与 1.8 的 区别,说明 1.8 做了哪些优化,如何优化的?
- final finally finalize
- 对象的四种引用
- Java获取反射的三种方法
- Java反射机制
- Arrays.sort和Collections.sort实现原理和区别
- LinkedHashMap的应用
- Cloneable接口实现原理
- 异常分类以及处理机制
- wait和sleep的区别
- 数组在内存中如何分配
杭州-蚂蚁金服-Java高级
1. jdk1.7 到 jdk1.8 Map 发生了什么变化(底层)?
2. ConcurrentHashMap
3. 并行跟并发有什么区别?
4. jdk1.7 到 jdk1.8 java 虚拟机发生了什么变化?
5. 如果叫你自己设计一个中间件,你会如何设计?
6. 什么是中间件?
7. ThreadLock 用过没有,说说它的作用?
8. Hashcode()和 equals()和==区别?
9. mysql 数据库中,什么情况下设置了索引但无法使用?
10. mysql 优化会不会,mycat 分库,垂直分库,水平分库?
11. 分布式事务解决方案?
12. sql 语句优化会不会,说出你知道的?
13. mysql 的存储引擎了解过没有?
14. 红黑树原理?
杭州-蚂蚁金服-资深工程师
蚂蚁
Java
一面
1.
二叉搜索树和平衡二叉树有什么关系,强平衡二叉树(
AVL
树)和弱平衡二叉树
(红黑树)有什么区别
2. B
树和
B+
树的区别,为什么
MySQL
要使用
B+
树
3. HashMap
如何解决
Hash
冲突
4. epoll
和
poll
的区别,及其应用场景
5.
简述线程池原理,
FixedThreadPool
用的阻塞队列是什么?
6. sychronized
和
ReentrantLock
的区别
7. sychronized
的自旋锁、偏向锁、轻量级锁、重量级锁,分别介绍和联系
8. HTTP
有哪些问题,加密算法有哪些,针对不同加密方式可能产生的问题,及其
HTTPS
是如何保证安全传输的
蚂蚁
Java
二面
1.
设计模式有哪些大类,及熟悉其中哪些设计模式
2. volatile
关键字,他是如何保证可见性,有序性
3. Java
的内存结构,堆分为哪几部分,默认年龄多大进入老年代
4. ConcurrentHashMap
如何保证线程安全,
jdk1.8
有什么变化
5.
为什么
ConcurrentHashMap
底层为什么要红黑树
6.
如何做的
MySQL
优化
7.
讲一下
oom
以及遇到这种情况怎么处理的,是否使用过日志分析工具
蚂蚁
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
命令的⼀些底层原理以及流程
面试题及答案总览
注:篇幅有限,资料已整理成文档,查看下方名片获取!
版权声明:
本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。
如若内容造成侵权、违法违规、事实不符,请将相关资料发送至xkadmin@xkablog.com进行投诉反馈,一经查实,立即处理!
转载请注明出处,原文链接:https://www.xkablog.com/javal-cj/6709.html