Java开发面试常见问题合集

次面试事故

面试官:你看过哪些源码?
我:都挺熟悉的
面试官:对hashMap了解程度怎么样?
面试官:那你能讲讲 HashMap的实现原理吗?
面试官:HashMap什么时候会进行 rehash?
面试官:结合源码说说 HashMap在高并发场景中为什么会出现死循环?
我:…
我:抱歉…
面试官:嗯。
面试官:… 把门关上。
我:… 要干嘛?先关上再说。
面试官:我说出去把门关上。
我:what ?,夺门而去
116道面试题

1.junit用法,before,beforeClass,after, afterClass的执行顺序

2.nginx的请求转发算法,如何配置根据权重转发

3.用hashmap实现redis有什么问题(死锁,死循环,可用ConcurrentHashmap)

4.线程的状态

5.线程的阻塞的方式

6.sleep和wait的区别

7.hashmap的底层实现

8.一万个人抢100个红包,如何实现(不用队列),如何保证2个人不能抢到同一个红包,可用分布式锁

9.java内存模型,垃圾回收机制,不可达算法

10.两个Integer的引用对象传给一个swap方法在方法内部交换引用,返回后,两个引用的值是否会发现变化

11.aop的底层实现,动态代理是如何动态,假如有100个对象,如何动态的为这100个对象代理

12.是否用过maven install。maven test。git(make install是安装本地jar包)

13.tomcat的各种配置,如何配置docBase

14.spring的bean配置的几种方式

15.web.xml的配置

16.spring的监听器。

17.zookeeper的实现机制,有缓存,如何存储注册服务的

18.IO会阻塞吗?readLine是不是阻塞的

19.用过spring的线程池还是java的线程池?

20.字符串的格式化方法 (20,21这两个问题问的太低级了)

21.时间的格式化方法

22.定时器用什么做的

23.线程如何退出结束

24.java有哪些锁?乐观锁 悲观锁 synchronized 可重入锁 读写锁,用过reentrantlock吗?reentrantlock与synmchronized的区别

25.ThreadLocal的使用场景

26.java的内存模型,垃圾回收机制

27.为什么线程执行要调用start而不是直接run(直接run,跟普通方法没什么区别,先调start,run才会作为一个线程方法运行)

28.qmq消息的实现机制(qmq是去哪儿网自己封装的消息队列)

29.遍历hashmap的三种方式

30.jvm的一些命令

31.memcache和redis的区别

32.mysql的行级锁加在哪个位置

33.ConcurrentHashmap的锁是如何加的?是不是分段越多越好

34.myisam和innodb的区别(innodb是行级锁,myisam是表级锁)

35.mysql其他的性能优化方式

36.linux系统日志在哪里看

37.如何查看网络进程

38.统计一个整数的二进制表示中bit为1的个数

39.jvm内存模型,java内存模型

40.如何把java内存的数据全部dump出来

41.Java 会出现内存溢出吗?什么情况下会出现?

42.双亲委派模型,为什么这样做?

43..对象什么情况下进入老年代?

44.mongodb和hbase的区别

45.如何解决并发问题

46.为什么使用 Executor 框架?

47.什么是阻塞队列?阻塞队列的实现原理是什么?如何使用阻塞队列来实现生产者-消费者模型?

48.快速排序说一下过程

49.垃圾回收算法

50.Tomcat 类加载器

51.读写分离何时强制要读主库,读哪个从库是通过什么方式决定的,从库的同步mysql用的什么方式

52.Redis 的数据类型?

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

54.将一个链表反转(用三个指针,但是每次只发转一个)

55.spring Aop的实现原理,具体说说

56.在 java 中守护线程和本地线程区别?

57.是否用过Autowire注解

58.spring的注入bean的方式

59.sql语句各种条件的执行顺序,如select, where, order by, group by

60.select xx from xx where xx and xx order by xx limit xx;如何优化这个(看explain)

61.四则元算写代码

62.统计100G的ip文件中出现ip次数最多的100个ip

63.zookeeper的事物,结点,服务提供方挂了如何告知消费方

64.5台服务器如何选出leader(选举算法)

65.适配器和代理模式的区别

66.读写锁

67.static加锁

68.Jedis 与 Redisson 对比有什么优缺点?

69.为什么 edis 需要把所有数据放到内存中?

70.mybatis如何映射表结构

71.二叉树遍历

72.如何使用 Spring Boot 实现分页和排序?

73.mysql引擎区别

74.你使用了哪些 starter maven 依赖项?

75.class文件编译后加载到了哪

76.web的http请求如何整体响应时间变长导致处理的请求数变少,该如何处理?用队列,当处理不了那么多http请求时将请求放到队列
中慢慢处理,web如何实现队列

77.kafka 如何不消费重复数据?比如扣款,我们不能重复的扣。

78.线程安全的单例模式

79.什么是 AOP?

80.你能否举一个以 ReadOnly 为事务管理的例子?

81.求表的size,或做数据统计可用什么存储引擎

82.哪个命令专门用来查看后台任务?

83.把后台任务调到前台执行使用什么命令?

84.怎么查看系统支持的所有信号?

85.搜索文件用什么命令? 格式是怎么样的?

86.使用什么命令查看用过的命令列表?

87.使用什么命令查看磁盘使用空间?空闲空间呢?

88.java的concurrent包用过没

89.Java 中用到的线程调度算法是什么?

90..java虚拟机的区域分配,各区分别存什么

91.在 Java 中 CycliBarriar 和 CountdownLatch 有什么区别?

92.Mybatis 是如何进行分页的?分页插件的原理是什么?

93.Mybatis 是如何将 sql 执行结果封装为目标对象并返回的?都有哪些映射形式?

94.在 mapper 中如何传递多个参数?

95.什么是 MyBatis 的接口绑定?有哪些实现方式?

96.redis能存哪些类型

97.服务注册和发现是什么意思?Spring Cloud 如何实现?

98.Spring Cloud 和dubbo区别?

99.什么是 Spring Cloud Bus?我们需要它吗?

100.什么是 Netflix Feign?它的优点是什么?

101SpringBoot和SpringCloud的区别?

102.可重入锁中的lock和trylock的区别

103.innodb对一行数据的读会枷锁吗?不枷锁,读实际读的是副本

104.redis做缓存是分布式存的?不同的服务器上存的数据是否重复?guava cache呢?是否重复?不同的机器存的数据不同

105.用awk统计一个ip文件中top10

106.对表做统计时可直接看schema info信息,即查看表的系统信息

107.mysql目前用的版本

108.公司经验丰富的人给了什么帮助?(一般boss面会问这些)

109.自己相对于一样的应届生有什么优势

110.自己的好的总结习惯给自己今后的工作带了什么帮助,举例为证

111.原子类,线程安全的对象,异常的处理方式

112.4Zookeeper 对于 Kafka 的作用是什么?

113.数据传输的事务定义有哪三种?

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

115.Kafka 与传统 MQ 消息系统之间有三个关键区别

116.讲一讲 kafka 的 ack 的三种机制

原文地址:https://www.cnblogs.com/zhuxiaopijingjing/p/12258447.html

时间: 2024-08-29 07:10:11

Java开发面试常见问题合集的相关文章

java常用编程工具合集下载

java常用编程工具合集下载 1.Eclipse<ignore_js_op> 尽管IntelliJ IDEA.NetBeans和一些其他的IDE正在日益普及,但是有调查表明,Eclipse仍然是几乎半数Java开发人员首选的开发环境. Eclipse是IDE领域的瑞士军刀,有着大量定制的接口和无数的插件.它无处不在,后面本文将推荐的其他所有工具都提供Eclipse插件.Eclipse的工作流程可分为三个方面:工作台,工作空间和视角.工作台作为到IDE的出发点.工作空间将项目.文件和配置设置组合

三、Java基础知识要点合集

1.数据类型 Java的数据类型分为基本数据类型和引用数据类型. a, 基本数据类型包括:byte, boolean, char, short, int, long, float, double; b, 每个基本数据类型都有相应的引用类型,比如int  ->  Integer,char -> character. c, 查询不同类型数据的范围,方法之一是可以用基本类型对应的引用类型.比如,"int i = Integer.Size; "(i表示int型数据所占的位(bit)

Java线程面试题合集(含答案)

来源:Java线程面试题 下面是我自己收集整理的Java线程相关的面试题,可以用它来好好准备面试. 参考文档: <Java核心技术 卷一> Java线程面试题 Top 50:http://www.importnew.com/12773.html JAVA多线程和并发基础面试问答: http://ifeve.com/java-multi-threading-concurrency-interview-questions-with-answers/ 15个顶级Java多线程面试题及回答:http:

面试经验合集-Java后端&lt;一&gt;

面试一:CDKHXJSYJS 时间:2018-12-29 周六 地点:航天科技大厦32楼 一 技术题目 <回忆版> 1.上下转型 2.Java异常:分类.处理.设计 3.二叉排序树:原理/自我实现 4.冒泡排序 5.IOC:原理/自我实现 6.利用反射机制,自我实现一个Web框架(类似于Structs.Spring MVC) 7.Java的static.属性.对象构造/初始化过程(涉及:继承.依赖.this.super等) 8.多线程操作 9.线程安全:涉及有哪些问题.如何保障? 10.Myb

Java面试经典合集1:如何安全地删除List中的元素

package com.chendan.mianshi; import java.util.ArrayList; import java.util.Iterator; import java.util.List; import java.util.stream.Collectors; public class MianShiTest1 { private static List<String> list = new ArrayList<String>(); public stati

JAVA面试经典合集2:怎样写出一个线程安全的单例模式

怎样写出一个线程安全的单例模式 package com.chendan.mianshi; /** * * * @Description * @author ChenDan [email protected] * @date 2019年8月4日下午8:47:13 * */ public class MianShiTest2 { public static void main(String[] args) { // [email protected] // [email protected] //

Java开发面试

有很多文章说面试相关的问题,有国内也有国外的,但是我相信不少人,特 别是新人看完后还是觉得比较虚比较泛,似乎好像懂了,但是一遇到面试还 是有些手无足措或者重复犯一些错误.本篇文章正是结合实际经验,为广大 程序员同志们写下满满的干货,让大家把握面试的关键点,找到面试的窍门 ,顺顺利利找到心仪的公司. 我认为面试是很奇妙的一件事情,在短短的一 段时间内,要让一个完全陌生的人认可你的专业能力,认可你的人品,认可 你的职业习惯等等.而同样,被面试者需要判断这是否是一家靠谱的公司, 是不是有钱,是不是适合

java面试题大合集(开发者必看)

前言 本文来自百度网络的一篇文章,由于没有答案,现在整理了一些比较好的回答和好的博客,可以自己扩展思路,如果大家有一下面试题的更好的答案,欢迎在评论区留言.以上全部来自网络!此外,我的微信公众号将每日分享下面面试题相关的知识点总结干货,欢迎关注微信公众号:好好学java! 文章推荐 精选java等全套学习资源 精选java电子图书资源 精选大数据学习资源 java项目练习精选 基本概念 1.操作系统中 heap 和 stack 的区别 堆:堆空间一般由程序员来分配,可以由垃圾回收机制来回收.一般

阿里JAVA开发面试常问问题总结3

Java集合类 Java的集合类都位于java.util包中,Java集合中存放的是对象的引用,而非对象本身. Java集合主要分为三种类型: 1.Set(集):集合中的对象不按特定方式排序,并且没有重复对象.它的有些实现类能对集合中的对象按特定方式排序. 2.List(列表):集合中的对象按索引位置排序,可以有重复对象,允许按照对象在集合中的索引位置检索对象. 3.Map(映射):集合中的每一个元素包含一对键对象和值对象,集合中没有重复的键对象,值对象可以重复.它的有些实现类能对集合中的键对象