0
点赞
收藏
分享

微信扫一扫

java面试题大全,java虚拟机优化面试

一、前言

最近刚读完一本书:《Netty、Zookeeper、Redis 并发实战》,个人觉得 Netty 部分是写得很不错的,读完之后又对 Netty 进行了一波很好的复习(之前用 spring boot + netty + zookeeper 模仿 dubbo 做 rpc 框架,那时候是刚学 netty 后自己造的小轮子)。

虽然对于 Netty 的使用已经比较熟悉了,而且还知道它的底层是基于 Java NIO 做进一步的封装,使得并发性能和开发效率得到大大的提升。但是,对于同步阻塞、同步非阻塞、异步这些概念,还是比较的模糊,一直处于似懂非懂的状态。

所以这两天,一直在网上看看大家对此的评论,也得到了一些启发。而且还有很多同学们提到了 《Netty 权威指南 第二版》 这本书,说前两章对于网络 I/O 模型和 Java I/O 的介绍很不错,所以我也特意去找了一本 pdf 来看看(比较穷。。。)。看了前两章后,确实对于这方面的概念清晰了不少,所以决定写下此文章来记录一下,也分享给更多不清楚这方面理论的同学们,并且也下定决定,有空一定把这本书继续看完,哈哈哈。

一面50min

在这里插入图片描述

  • 自我介绍
  • Java集合
  • LinkedList与ArrayList
  • fail-fast
  • CAS
  • reentrantlock
  • synchronized
  • 线程池
  • mysql引擎
  • 事务隔离级别
  • 索引
  • B树与B+树,为什么用B+树
  • mvcc
  • redis的一些命令(了解的不多,因为都是用lettuce来操作)
  • 合并有序数组

有一些忘记了,记得不太全,顺利通过了,然后过一会二面

二面50min

  • 自我介绍
    (面试官发现他想问的上一面问过了)
  • AtomicInteger在什么情景下使用(并发多线程,举例线程池、锁)
  • 建立一个数据库,存储抢课的情景
  • 根据上面的数据库写sql
  • 自己实现一个栈
  • 遍历一个路径下文件大小最大的文件路径(写伪代码即可,因为我们都忘了相关的api)
  • 手写一个单例(我写了双重检测)
    (忘了用static修饰),然后顺便说了下为什么要用static修饰
  • 为什么synchronized要写在两个if中间
  • 其他的一些非技术的问题

应该是通过了,我看到昨晚有人接到三面的安排以为我凉了,没想到hr说因为今天安排不过来了 ??

《一线大厂Java面试真题解析+Java核心总结学习笔记+最新全套讲解视频+实战项目源码》开源

Java开发优秀开源项目:

  • ali1024.coding.net/public/P7/Java/git

  • github.com/spring-projects

最后

我还为大家准备了一套体系化的架构师学习资料包以及BAT面试资料,供大家参考及学习

已经将知识体系整理好(源码,笔记,PPT,学习视频)

在这里插入图片描述

在这里插入图片描述

在这里插入图片描述

举报

相关推荐

0 条评论