2020最新的大厂面试题,以下面试题能答出70%你就可以去试试。话不多说,直接上题:
阿里(60道面试题)
1.Java事件机制包括哪三个部分?分别介绍下。
2.使用线程池的原因?
3.线程池的作用有哪些?
4.几种常见的线程池及其各自的使用场景是怎样的。
5.线程池都有哪几种工作队列?
6.怎么理解无界队列和有界队列?
7.线程池中的几种重要的参数及流程说明。
8.什么是反射机制?
9.说说反射机制的作用。
10.反射机制会不会有性能问题?
11.你怎么理解http协议?
12.说说http协议的工作流程。
13.http有哪些请求提交方式?
14.http中的200,302,403,404,500,503都代表什么状态?
15.http get和post有什么区别?
16.你怎么理解cookie和session,有哪些不同点?
17.什么是web缓存?有什么优点?
18.什么是https,说说https的工作原理?
20.什么是虚拟主机及实现原理?
21.什么是Java虚拟机,为什么要使用?
22.说说Java虚拟机的生命周期及体系结构。
23.说一说Java内存区域。
24.什么是分布式系统?
25.分布式系统你会考虑哪些方面?
26.为什么说TCP/IP协议是不可靠的?
27.OSI有哪七层模型?TCP/IP是哪四层模型。
28.TCP协议的三次握手,四次挥手流程。
29.为什么TCP建立连接协议是三次握手,而关闭连接却是四次握手呢?为什么不能用两次握手进行连接?
32.描述一下Java异常层次结构。
33.什么是检查异常,不受检查异常,运行时异常?并分别举例说明。
34.finally块一定会执行吗?
35.正常情况下,当在try块或catch块中遇到return语句时,finally语句块在方法返回之前还是之后被执行?
36.try、catch、finally语句块的执行顺序。
37.Java虚拟机中,数据类型可以分为哪几类?
38.怎么理解栈、堆?堆中存什么?栈中存什么?
39.为什么要把堆和栈区分出来呢?栈中不是也可以存储数据吗?
40.在Java中,什么是是栈的起始点,同是也是程序的起始点?
43.Java中有没有指针的概念?
44.Java中,栈的大小通过什么参数来设置?
45.一个空Object对象的占多大空间?
46.对象引用类型分为哪几类?
47.讲一讲垃圾回收算法。
48.如何解决内存碎片的问题?
49.如何解决同时存在的对象创建和对象回收问题?
50.讲一讲内存分代及生命周期。
51.什么情况下触发垃圾回收?
52.如何选择合适的垃圾收集算法?
53.JVM有哪三种垃圾回收器?
54.JVM中最大堆大小有没有限制?
55.如何进行JVM调优?有哪些方法?
56.堆大小通过什么参数设置?
60.如何解决业务层的数据访问问题?
61.为了解决数据库服务器的负担,如何做数据库的分布?
62.什么是著名的拜占庭将军问题?
63.讲讲CAP理念。
64.怎么理解强一致性、单调一致性和最终一致性?
65.分布式系统设计你会考虑哪些策略?
百度(24道面试题)
手写ArrayList
手写进制转换算法,求出一个数的二进制数1的个数
AVA基础 equals和==
多线程方式、threadlocal,各种锁,synchronized和lock
设计模式、spring类加载方式、实例保存在哪、aop ioc、反射机制
类加载器,双亲委派模型,热部署
jvm内存模型,内存结构、堆的分代算法、堆的分区、gc算法、gc过程。
tcp ip 七层模型 rest接口规范 get和post区别,长度,安全。
tcp ip的arp协议,两个同一网络的主机如何获得对方的mac地址。
负载均衡、高并发、高可用的架构
mysql的引擎区别
redis缓存,redis的集群部署,热备份,主从备份,主从数据库,hash映射找到知道指定节点。
了解云计算么,了解云容器docker么,容器和虚拟机的区别。
项目中的数据库备份,主从数据库、集群
数据库的索引原理,b+树原理,trie树引申,二叉查找树的原理
海量数据中查找一个单词,分布式计算map reduce ,或者用hsah映射筛选部分结果
java的抽象类和接口区别、java的hashmap,java的内存模型,分区,分代垃圾回收算法。实例、常量放在哪里。
int 4个字节,double 8个字节。
多线程中的wait和sleep区别,notify的作用
设计模式了解哪些,写一个观察者模式。实现两个接口,一个是主题一个是观察者,并写出对应方法。
写一个生产者消费者队列的方法,分别写两个类代表生产者和消费者,并且用队列模拟其生产消费。用while循环和wait notify可以实现,但我忘记在队列上加synchronize关键字,于是让我再写一题。写的是:输入一个字符串,输入第一个只出现一次的字符,写出来了。
tcp ip的四次挥手 子网掩码的作用, 子网掩码(subnet mask)又叫 网络掩码 、 地址掩码 、子网络遮罩,它是一种用来指明一个 IP地址 的哪些位标识的是 主机 所在的子网,以及哪些位标识的是主机的位掩码。子网掩码不能单独存在,它必须结合IP地址一起使用。子网掩码只有一个作用,就是将某个IP地址划分成 网络地址 和 主机地址 两部分。
了解linux么,说一下linux的内核锁?没接触过。
有没有用过sed 使用shell脚本写一个将文本中的字符替换掉的脚本,大概说了一下用grep || 替换。没再问linux的
腾讯(50道面试题)
线程池有什么作用?
说说几种常见的线程池及使用场景。
什么是反射机制?
说说反射机制的作用。
反射机制会不会有性能问题?
你怎么理解http协议?
说说http协议的工作流程。
http有哪些请求提交方式?
http中的200,302,403,404,500,503都代表什么状态?
http get和post有什么区别?
你怎么理解cookie和session,有哪些不同点?
什么是web缓存?有什么优点?
什么是https,说说https的工作原理?
什么是http代理服务器,有什么用?
什么是虚拟主机及实现原理?
什么是Java虚拟机,为什么要使用?
什么是分布式系统?
分布式系统你会考虑哪些方面?
讲一讲TCP协议的三次握手和四次挥手流程。
为什么TCP建立连接协议是三次握手,而关闭连接却是四次握手呢?为什么不能用两次握手进行连接?
为什么TCP TIME_WAIT状态还需要等2MSL后才能返回到CLOSED状态?
什么是DoS、DDoS、DRDoS攻击?如何防御?
描述一下Java异常层次结构。
什么是检查异常,不受检查异常,运行时异常?并分别举例说明。
finally块一定会执行吗?
正常情况下,当在try块或catch块中遇到return语句时,finally语句块在方法返回之前还是之后被执行?
try、catch、finally语句块的执行顺序。
Java虚拟机中,数据类型可以分为哪几类?
Java中,栈的大小通过什么参数来设置?
一个空Object对象的占多大空间?
讲一讲垃圾回收算法。
如何解决内存碎片的问题?
如何解决同时存在的对象创建和对象回收问题?
讲一讲内存分代及生命周期。
什么情况下触发垃圾回收?
如何选择合适的垃圾收集算法?
堆大小通过什么参数设置?
JVM有哪三种垃圾回收器?
吞吐量优先选择什么垃圾回收器?响应时间优先呢?
如何进行JVM调优?有哪些方法?
如何理解内存泄漏问题?有哪些情况会导致内存泄露?如何解决?
讲讲CAP理念。
怎么理解强一致性、单调一致性和最终一致性?
分布式系统设计你会考虑哪些策略?
最常见的数据分布方式是什么?
谈一谈一致性哈希算法。
如何理解选主算法?
OSI有哪七层模型?TCP/IP是哪四层模型。
京东(20道面试题)
Tomcat的基本架构是什么?
jvm调优,工作的是怎么用的,垃圾回收的策略有哪些?
Java 中的线程池是如何实现的?创建线程池的几个核心构造参数?
对比下 volatile 对比 Synchronized 的异同。
GC机制是什么?
垃圾回收器的基本原理是什么?垃圾回收器可以立马回收内存吗?怎样主动通知虚拟机进行垃圾回收?
类加载器双亲委派模型机制?
集合的种类以及区别,HashMap底层如何实现?HashMap中Hash冲突是怎么解决的?
Spring IOC 怎么管理 Bean 之间的依赖关系,怎么避免循环依赖?
Spring Bean 创建过程中的设计模式?
InnoDB 支持的四种事务隔离级别名称,以及逐级之间的区别?
简述事务的特性?
什么是MySQL隔离级别?
如何理解BTree机制?
谈谈对慢查询分析?MySQL常用优化方式有哪些??
谈谈悲观锁和乐观锁及用SQL实现?
简述三次握手及四次挥手的过程?
对比B+树索引和 Hash索引?
MySQL的锁并发?
高并发场景(领红包)如何防止死锁,保证数据一致性?
集群与负载均衡的算法与实现?
简述分库与分表设计?
分库与分表带来的分布式困境与应对之策?
加锁机制是什么?
美团(30道面试题)
java虚拟机内存模型
内存溢出一般发生在哪个区?永久代会不会导致内存溢出?
动态加载类的框架了解哪些?
动态代理一般有哪几种实现方式?动态代理的应用场景有哪些?
栈会不会溢出?栈溢出一般抛什么异常?jvm在哪里设置栈的大小?设置的参数是什么?
jvm的垃圾回收机制?
java类加载机制?如何实现自定义类加载器?findClass与loadClass的区别?
String、StringBuffer、StringBuilder的区别?对应的使用场景?
如何实现不可变的类?
浅复制和深复制?怎样实现深复制?
HashMap、HashTable、ConcurrentHashMap的区别?
CAS是一种什么样的同步机制?
spring加载bean的流程?
java线程池?线程池构造函数的几个参数含义?keepAliveTime解释一下?
一个接口,要去调用另外5个接口,每一个接口都会返回数据给这个调用接口,调用接口要对数据进行合并并返回给上层。这样一种场景可能用到并发包下的哪些类?你会怎么去实现这样的业务场景?
CountDownLatch和CyclicBarrier的区别?
线程加锁有哪些方式?synchronized和lock的区别?
volatile关键字的作用?为什么使用AtomicLong而不使用Long?AtomicLong的底层是怎么实现的?
mysql的存储引擎有哪几种?
sql优化有哪些着手点?组合索引的最左前缀原则的含义?
springmvc处理请求的流程?
spring的事务怎么使用?事务回滚?自定义异常?
脏读?幻读?
tcp四次挥手的过程?TIME_WAIT为什么至少设置两倍的MSL时间?
了解哪些开源的中间件?缓存?消息?分布式框架?
用到过哪些设计模式?单例模式的实现?
数据库的脏读,幻读,不可重复读出现的原因原理,解决办法
数据库的隔离级别、MVCC
乐观锁、悲观锁、互斥锁、读写锁的原理实现与区别
一致性hash算法原理与应用
CAP原则
CAS操作
2020最新BAT必考题和答案、2020最新BAT必考题和答案全面覆盖:内容包括:redis、高并发、多线程、分布式、MySQL、数据库、线程、锁、dubbo、jvm、Java虚拟机、spring、memcached等。
小编整理的面试答案获取方式:面试答案获取方式:关注后帮忙点赞一下,私信回复【面试资料】即可免费获取到了
网友评论