热门标签 | HotTags
当前位置:  开发笔记 > 编程语言 > 正文

2019年大厂Java面试真题合辑放送

2019年大厂Java面试真题合辑放送,Go语言社区,Golang程序员人脉社

java 后端面试题
1、List 和 Set 的区别

2、HashSet 是如何保证不重复的

3、HashMap 是线程安全的吗,为什么不是线程安全的(最好画图说明多线程环境下不安全)?

4、HashMap 的扩容过程

5、HashMap 1.7 与 1.8 的 区别,说明 1.8 做了哪些优化,如何优化的?

6、对象的四种引用

7、Java获取反射的三种方法

8、Java反射机制

9、Arrays.sort 和 Collections.sort 实现原理 和区别

10、LinkedHashMap 的应用

11、Cloneable 接口实现原理

12、异常分类以及处理机制

13、wait 和 sleep 的区别

14、数组在内存中如何分配
在这里插入图片描述
Kafka面试专题及答案
1、Kafka 的设计时什么样的呢?

2、数据传输的事物定义有哪三种?

3、Kafka 判断一个节点是否还活着有那两个条件?

4、producer 是否直接将数据发送到 broker 的 leader(主节点)?

5、Kafa consumer 是否可以消费指定分区消息?

6、Kafka 消息是采用 Pull 模式,还是 Push 模式?

7、Kafka 存储在硬盘上的消息格式是什么?

8、Kafka 高效文件存储设计特点:

9、Kafka 与传统消息系统之间有三个关键区别

10、Kafka 创建 Topic 时如何将分区放置到不同的 Broker 中

11、Kafka 新建的分区会在哪个目录下创建

12、partition 的数据如何保存到硬盘

13、kafka 的 ack 机制

14、Kafka 的消费者如何消费数据

15、消费者负载均衡策略

16、数据有序

17、kafaka 生产数据时数据的分组策略
在这里插入图片描述

Redis面试专题
1、什么是 Redis?简述它的优缺点?

2、Redis 与 memcached 相比有哪些优势?

3、Redis 支持哪几种数据类型?

4、Redis 主要消耗什么物理资源?

5、Redis 有哪几种数据淘汰策略?

6、Redis 官方为什么不提供 Windows 版本?

7、一个字符串类型的值能存储最大容量是多少?

8、为什么 Redis 需要把所有数据放到内存中?

9、Redis 集群方案应该怎么做?都有哪些方案?

10、Redis 集群方案什么情况下会导致整个集群不可用?

11、MySQL 里有 2000w 数据,redis 中只存 20w 的数据,如何保证 redis 中的数据都是热点数据?

12、Redis 有哪些适合的场景?

13、Redis 支持的 Java 客户端都有哪些?官方推荐用哪个?

14、Redis 和 Redisson 有什么关系?

15、Jedis 与 Redisson 对比有什么优缺点?

16、说说 Redis 哈希槽的概念?

17、Redis 集群的主从复制模型是怎样的?

18、Redis 集群会有写操作丢失吗?为什么?

19、Redis 集群之间是如何复制的?

20、Redis 集群最大节点个数是多少?

21、Redis 集群如何选择数据库?

22、Redis 中的管道有什么用?

23、怎么理解 Redis 事务?

24、Redis 事务相关的命令有哪几个?

25、Redis key 的过期时间和永久有效分别怎么设置?

26、Redis 如何做内存优化?

27、Redis 回收进程如何工作的?

28、加锁机制

29、锁互斥机制

30、watch dog 自动延期机制

31、可重入加锁机制

32、释放锁机制

33、上述 Redis 分布式锁的缺点

34、使用过 Redis 分布式锁么,它是怎么实现的?

35、使用过 Redis 做异步队列么,你是怎么用的?有什么缺点?

36、什么是缓存穿透?如何避免?什么是缓存雪崩?何如避免?

37、redis 和 memcached 什么区别?为什么高并发下有时单线程的 redis 比多线程的memcached 效率要高?

38、redis 主从复制如何实现的?redis 的集群模式如何实现?redis 的 key 是如何寻址的?

39、使用 redis 如何设计分布式锁?说一下实现思路?使用 zk 可以吗?如何实现?这两种有什么区别?

40、知道 redis 的持久化吗?底层如何实现的?有什么优点缺点?

41、redis 过期策略都有哪些?LRU 算法知道吗?写一下 java 代码实现?

42、缓存穿透、缓存击穿、缓存雪崩解决方案?

43、在选择缓存时,什么时候选择 redis,什么时候选择 memcached?

44、缓存与数据库不一致怎么办?

45、主从数据库不一致如何解决?

46、Redis 常见的性能问题和解决方案

47、Redis 的数据淘汰策略有哪些?

48、Redis 当中有哪些数据结构?

49、假如 Redis 里面有 1 亿个 key,其中有 10w 个 key 是以某个固定的已知的前缀开头的,如何将它们全部找出来?

50、使用 Redis 做过异步队列吗,是如何实现的?

51、Redis 如何实现延时队列?
在这里插入图片描述
微服务面试专题
1、前后端分离是如何做的

2、微服务哪些框架

3、说说 RPC 的实现原理

4、说说 Dubbo 的实现原理

5、怎么理解 RESTful
在这里插入图片描述
最全JVM面试专题

1、内存模型以及分区,需要详细到每个区放什么。
2、堆里面的分区:Eden,survival (from+ to),老年代,各自的特点。
3、对象创建方法,对象的内存分配,对象的访问定位。
4、GC 的两种判定方法:
5、SafePoint 是什么
6、GC 的三种收集方法:标记清除、标记整理、复制算法的原理与特点,分别用
7、在什么地方,如果让你优化收集方法,有什么思路?
8、GC 收集器有哪些?CMS 收集器与 G1 收集器的特点。
9、Minor GC 与 Full GC 分别在什么时候发生?
10、几种常用的内存调试工具:jmap、jstack、jconsole、jhat
11、类加载的几个过程:
12、JVM 内存分哪几个区,每个区的作用是什么?
13、如和判断一个对象是否存活?(或者 GC 对象的判定方法)
14、简述 java 垃圾回收机制?
15、java 中垃圾收集的方法有哪些?
16、java 内存模型
17、java 类加载过程?
18、简述 java 类加载机制?
19、类加载器双亲委派模型机制?
20、什么是类加载器,类加载器有哪些?
21、简述 java 内存分配与回收策率以及 Minor GC 和Major GC

在这里插入图片描述


推荐阅读
  • 一面自我介绍对象相等的判断,equals方法实现。可以简单描述挫折,并说明自己如何克服,最终有哪些收获。职业规划表明自己决心,首先自己不准备继续求学了,必须招工作了。希望去哪 ... [详细]
  • Mac OS 升级到11.2.2 Eclipse打不开了,报错Failed to create the Java Virtual Machine
    本文介绍了在Mac OS升级到11.2.2版本后,使用Eclipse打开时出现报错Failed to create the Java Virtual Machine的问题,并提供了解决方法。 ... [详细]
  • 在说Hibernate映射前,我们先来了解下对象关系映射ORM。ORM的实现思想就是将关系数据库中表的数据映射成对象,以对象的形式展现。这样开发人员就可以把对数据库的操作转化为对 ... [详细]
  • Spring特性实现接口多类的动态调用详解
    本文详细介绍了如何使用Spring特性实现接口多类的动态调用。通过对Spring IoC容器的基础类BeanFactory和ApplicationContext的介绍,以及getBeansOfType方法的应用,解决了在实际工作中遇到的接口及多个实现类的问题。同时,文章还提到了SPI使用的不便之处,并介绍了借助ApplicationContext实现需求的方法。阅读本文,你将了解到Spring特性的实现原理和实际应用方式。 ... [详细]
  • 本文介绍了如何使用C#制作Java+Mysql+Tomcat环境安装程序,实现一键式安装。通过将JDK、Mysql、Tomcat三者制作成一个安装包,解决了客户在安装软件时的复杂配置和繁琐问题,便于管理软件版本和系统集成。具体步骤包括配置JDK环境变量和安装Mysql服务,其中使用了MySQL Server 5.5社区版和my.ini文件。安装方法为通过命令行将目录转到mysql的bin目录下,执行mysqld --install MySQL5命令。 ... [详细]
  • JDK源码学习之HashTable(附带面试题)的学习笔记
    本文介绍了JDK源码学习之HashTable(附带面试题)的学习笔记,包括HashTable的定义、数据类型、与HashMap的关系和区别。文章提供了干货,并附带了其他相关主题的学习笔记。 ... [详细]
  • 本文介绍了GregorianCalendar类的基本信息,包括它是Calendar的子类,提供了世界上大多数国家使用的标准日历系统。默认情况下,它对应格里高利日历创立时的日期,但可以通过调用setGregorianChange()方法来更改起始日期。同时,文中还提到了GregorianCalendar类为每个日历字段使用的默认值。 ... [详细]
  • 本文整理了Java面试中常见的问题及相关概念的解析,包括HashMap中为什么重写equals还要重写hashcode、map的分类和常见情况、final关键字的用法、Synchronized和lock的区别、volatile的介绍、Syncronized锁的作用、构造函数和构造函数重载的概念、方法覆盖和方法重载的区别、反射获取和设置对象私有字段的值的方法、通过反射创建对象的方式以及内部类的详解。 ... [详细]
  • 一次上线事故,30岁+的程序员踩坑经验之谈
    本文主要介绍了一位30岁+的程序员在一次上线事故中踩坑的经验之谈。文章提到了在双十一活动期间,作为一个在线医疗项目,他们进行了优惠折扣活动的升级改造。然而,在上线前的最后一天,由于大量数据请求,导致部分接口出现问题。作者通过部署两台opentsdb来解决问题,但读数据的opentsdb仍然经常假死。作者只能查询最近24小时的数据。这次事故给他带来了很多教训和经验。 ... [详细]
  • HashMap的相关问题及其底层数据结构和操作流程
    本文介绍了关于HashMap的相关问题,包括其底层数据结构、JDK1.7和JDK1.8的差异、红黑树的使用、扩容和树化的条件、退化为链表的情况、索引的计算方法、hashcode和hash()方法的作用、数组容量的选择、Put方法的流程以及并发问题下的操作。文章还提到了扩容死链和数据错乱的问题,并探讨了key的设计要求。对于对Java面试中的HashMap问题感兴趣的读者,本文将为您提供一些有用的技术和经验。 ... [详细]
  • 2021最新总结网易/腾讯/CVTE/字节面经分享(附答案解析)
    本文分享作者在2021年面试网易、腾讯、CVTE和字节等大型互联网企业的经历和问题,包括稳定性设计、数据库优化、分布式锁的设计等内容。同时提供了大厂最新面试真题笔记,并附带答案解析。 ... [详细]
  • 数据库锁的分类和应用
    本文介绍了数据库锁的分类和应用,包括并发控制中的读-读、写-写、读-写/写-读操作的问题,以及不同的锁类型和粒度分类。同时还介绍了死锁的产生和避免方法,并详细解释了MVCC的原理以及如何解决幻读的问题。最后,给出了一些使用数据库锁的实际场景和建议。 ... [详细]
  • 本文提供了关于数据库设计的建议和注意事项,包括字段类型选择、命名规则、日期的加入、索引的使用、主键的选择、NULL处理、网络带宽消耗的减少、事务粒度的控制等方面的建议。同时还介绍了使用Window Functions进行数据处理的方法。通过遵循这些建议,可以提高数据库的性能和可维护性。 ... [详细]
  • 生产环境下JVM调优参数的设置实例
     正文前先来一波福利推荐: 福利一:百万年薪架构师视频,该视频可以学到很多东西,是本人花钱买的VIP课程,学习消化了一年,为了支持一下女朋友公众号也方便大家学习,共享给大家。福利二 ... [详细]
  • mapreduce源码分析总结
    这篇文章总结的非常到位,故而转之一MapReduce概述MapReduce是一个用于大规模数据处理的分布式计算模型,它最初是由Google工程师设计并实现的ÿ ... [详细]
author-avatar
noise1969_366438
这个家伙很懒,什么也没留下!
PHP1.CN | 中国最专业的PHP中文社区 | DevBox开发工具箱 | json解析格式化 |PHP资讯 | PHP教程 | 数据库技术 | 服务器技术 | 前端开发技术 | PHP框架 | 开发工具 | 在线工具
Copyright © 1998 - 2020 PHP1.CN. All Rights Reserved | 京公网安备 11010802041100号 | 京ICP备19059560号-4 | PHP1.CN 第一PHP社区 版权所有