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 的三种机制
Java开发面试常见问题合集的更多相关文章
- 2019最新最全Java开发面试常见问题答案总结
2019最新最全Java开发面试常见问题答案总结 马上准备9月份出去面试Java开发,自己学习丢西瓜捡芝麻,学了的都忘了,所以有机会自己做个学习笔记,摘录自各个博文以及总结. 1.JAVA面向对象的特 ...
- Java后台面试 常见问题
Java后台面试 常见问题 从三月份找实习到现在,面了一些公司,挂了不少,但最终还是拿到小米.百度.阿里.京东.新浪.CVTE.乐视家的研发岗offer.我找的是java后台开发,把常见的问题分享 ...
- Java面试题资料合集
Java面试题资料合集 2021年最新版--Java+最常见的+200++面试题汇总+答案总结汇总.pdf BIO,NIO,AIO,Netty面试题 35道.pdf Dubbo面试题 47道.pdf ...
- Java开发面试总结
Java开发面试总结.. ----------------------- java 基础知识点这一块: 1.面向对象的三大特征.(继承,封装,多态) 1.1 在什么样的场合下面会使用到继承 1.2 什 ...
- java 美团面试常见问题总
一 基础篇 1. System.out.println(3|9)输出什么? 2. 说一下转发(Forward)和重定向(Redirect)的区别 3. 在浏览器中输入url地址到显示主页的过程,整个过 ...
- 各大互联网公司java开发面试常问问题
本人是做java开发的,这是我参加58,搜狐,搜狗,新浪微博,百度,腾讯文学,网易以及其他一些小的创业型公司的面试常被问的问题,当然有重复,弄清楚这些,相信面试会轻松许多. 1. junit用法,be ...
- java开发面试大全刷题整理
题目源自Java团长公众号,内容个人整理,来源于各大博客,未经允许,不准摘抄,仅供分享,不做商业使用. 本分享多数为浅层知识体系,更为底层的还请自行多写写代码,若有不对之处,望广大的人才指点,不喜勿喷 ...
- Java高阶面试问题合集
下面总结一下在Java面试中常用的一些问题,不具体解答,我只附上一些精彩的博文链接. Spring IOC AOP 底层原理 JAVA的反射机制和动态代理 Java反射机制和动态代理 多线程 Spri ...
- 面试经验合集-Java后端<一>
面试一:CDKHXJSYJS 时间:2018-12-29 周六 地点:航天科技大厦32楼 一 技术题目 <回忆版> 1.上下转型 2.Java异常:分类.处理.设计 3.二叉排序树 ...
随机推荐
- Maven--配置 Maven 从 Nexus 下载构件
在 POM 中配置: <project> ... <repositories> <repository> <id>nexus</id> &l ...
- ubuntu服务器上配置tomcat
前言 嗯,最近想在自己的腾讯云服务器上跑个项目玩玩,由于服务器是重装的系统,所以,只能自己手动装tomcat. 不过,tomcat是基于java的,必须又java环境tomcat才能够使用,因此首先要 ...
- tomcat运行方式详解
tomcat的运行模式有3种 一.bio(blocking I/O) 即阻塞式I/O操作,表示Tomcat使用的是传统的Java I/O操作(即java.io包及其子包).是基于JAVA的HTTP/1 ...
- ubuntu下查询网络的常用命令
1.查看无线路由器(网关)的IP地址 在terminal中输入如下命令,即可查询到当前使用的路由器的IP地址(我电脑是连着一个无线网络还有一个DSL连接): route|grep -i default ...
- sourceTree 代码回滚(git 和http)
近些时候,有遇到提交后代码有误的情况,所以需要回退到前一个版本.因为不常见,所以每次都不是很熟练,记录于此,以备查阅. 一.[将master重置到这次提交] 在sourceTree中选中错误的提交的下 ...
- MyBatis从入门到精通(第6章):MyBatis 高级查询->6.1.1高级结果映射之一对一映射
jdk1.8.MyBatis3.4.6.MySQL数据库5.6.45.IntelliJ IDEA 2019.2.4 本章主要包含的内容为 MyBatis 的高级结果映射,主要处理数据库一对一.一对多的 ...
- flutter依赖某些插件,点击运行会出现错误
org.gradle.jvmargs=-Xmx1536M android.useAndroidX=true android.enableJetifier=true android.enableAapt ...
- PAT Advanced 1015 Reversible Primes (20) [素数]
题目 A reversible prime in any number system is a prime whose "reverse" in that number syste ...
- gcc -S xx
编译器的核心任务是把C程序翻译成机器的汇编语言(assembly language).汇编语言是人类可以阅读的编程语言,也是相当接近实际机器码的语言.由此导致每种 CPU 架构都有不同的汇编语言. 实 ...
- MyBatis从入门到精通(第4章):MyBatis动态SQL【if、choose 和 where、set、trim】
(第4章):MyBatis动态SQL[if.choose 和 where.set.trim] MyBatis 的强大特性之一便是它的动态 SQL.MyBatis 3.4.6版本采用了功能强大的OGNL ...