春招+秋招核心面试问题

Java基础

1、List和Set的区别。

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

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

4、HashMap的扩容过程。

5、HashMap1.7与1.8的 区别,说明1.8做了哪些优化,如何优化的?

6、final finally finalize。

7、强引用 、软引用、 弱引用、虚引用。

8、Java反射。

9、Arrays.sort 实现原理和Collection实现原理。

10、LinkedHashMap的应用。

11、cloneable接口实现原理。

12、wait和sleep的区别。

13、数组在内存中如何分配?

Java 并发

1、synchronized的实现原理以及锁优化?

2、volatile的实现原理?

3、Java的信号灯?

4、synchronized在静态方法和普通方法的区别?

5、怎么实现所有线程在等待某个事件的发生才会去执行?

6、CAS?CAS有什么缺陷,如何解决?

7、synchronized和lock有什么区别?

8、Hashtable是怎么加锁的 ?

9、HashMap的并发问题?

10、ConcurrenHashMap介绍?1.8 中为什么要用红黑树?

11、AQS简述。

12、如何检测死锁?怎么预防死锁?

框架

看过哪些开源框架的源码
为什么要用Redis,Redis有哪些优缺点?Redis如何实现扩容?
Netty是如何使用线程池的,为什么这么使用
为什么要使用Spring,Spring的优缺点有哪些
Spring的IOC容器初始化流程
Spring的IOC容器实现原理,为什么可以通过byName和ByType找到Bean
Spring AOP实现原理
消息中间件是如何实现的,技术难点有哪些

JVM

1.JVM的内存结构。

2.JVM方法栈的工作过程,方法栈和本地方法栈有什么区别?

3.JVM的栈中引用如何和堆中的对象产生关联。

4.可以了解一下逃逸分析技术。

5.GC的常见算法,CMS以及G1的垃圾回收过程,CMS的各个阶段哪两个是Stop the world的,CMS会不会产生碎片,G1的优势。

6.标记清除和标记整理算法的理解以及优缺点。

7.eden survivor区的比例,为什么是这个比例,eden survivor的工作过程。

8.JVM如何判断一个对象是否该被GC,可以视为root的都有哪几种类型?

9.强软弱虚引用的区别以及GC对他们执行怎样的操作?

10.Java是否可以GC直接内存。

Spring

1、BeanFactory和FactoryBean?

2、Spring IOC的理解,其初始化过程?

3、BeanFactory和ApplicationContext?

4、Spring Bean的生命周期,如何被管理的?

5、Spring Bean的加载过程是怎样的?

6、如果要你实现Spring AOP,请问怎么实现?

7、如果要你实现Spring IOC,你会注意哪些问题?

8、Spring是如何管理事务的,事务管理机制?

9、Spring的不同事务传播行为有哪些,干什么用的?

10、Spring中用到了那些设计模式?

SpringBoot-Spring Cloud

1、什么是Spring Boot?

2、SpringBoot有哪些优点?

3、什么是JavaConfig?

4、4、如何重新加载Spring Boot上的更改,而无需重新启动服务器?

5、Spring Boot中的监视器是什么?

6、如何在Spring Boot中禁用Actuator端点安全性?

7、如何在自定义端口上运行Spring Boot应用程序?

8、什么是YAML?

9、如何实现Spring Boot应用程序的安全性?

10、如何集成Spring Boot和ActiveMQ?

MySQL高频20题解析

1.事务四大特性(ACID)原子性、一致性、隔离性、持久性?

2.事务的并发?事务隔离级别,每个级别会引发什么问题,MySQL默认是哪个级别?

3.MySQL常见的三种存储引擎(InnoDB、MyISAM、MEMORY)的区别?

4.MySQL的MyISAM与InnoDB两种存储引擎在,事务、锁级别,各自的适用场景?

5.查询语句不同元素(where、jion、limit、group by、having等等)执行先后顺序?

6.什么是临时表,临时表什么时候删除?

7.MySQL B+Tree索引和Hash索引的区别?

8.sql查询语句确定创建哪种类型的索引?如何优化查询?

9.聚集索引和非聚集索引区别?

10.有哪些锁(乐观锁悲观锁),select 时怎么加排它锁?

多线程

1.Java实现多线程有哪几种方式?

2.Callable和Future的了解。

3.线程池的参数有哪些,在线程池创建一个线程的过程。

4.volitile关键字的作用,原理。

5.synchronized关键字的用法,优缺点。

6.Lock接口有哪些实现类,使用场景是什么?

7.可重入锁的用处及实现原理,写时复制的过程,读写锁,分段锁(ConcurrentHashMap中的segment)。

8.悲观锁,乐观锁,优缺点,CAS有什么缺陷,该如何解决?

9.ABC三个线程如何保证顺序执行。

ZooKeeper

1.ZooKeeper是什么?

2.ZooKeeper提供了什么?

3.Zookeeper文件系统。

4.Zookeeper怎么保证主从节点的状态同步?

5.四种类型的数据节点Znode。

6.Zookeeper Watcher机制–数据变更通知。

7.客户端注册Watcher实现。

8.服务端处理Watcher实现。

9.客户端回调Watcher。

10.ACL权限控制机制。

Netty

1.Netty 是什么?

2.Netty 的特点是什么?

3.Netty 的优势有哪些?

4.Netty 的应用场景有哪些?

5.Netty 高性能表现在哪些方面?

6.BIO、NIO和AIO的区别?

7.NIO的组成?

8.Netty的线程模型?

9.TCP 粘包/拆包的原因及解决方法?

10.什么是 Netty 的零拷贝?

Tomcat

1.Tomcat是什么?

2.Tomcat的缺省端口是多少,怎么修改?

3.tomcat有哪几种Connector运行模式(优化)?

4.Tomcat有几种部署方式?

5.tomcat容器是如何创建servlet类实例?用到了什么原理?

6.Tomcat工作模式。

7.Tomcat顶层架构。

8.Tomcat顶层架构小结。

9.Connector和Container的微妙关系。

10.Container架构分析。

Redis

1.RDB和AOF区别。

2.为什么RDB要fork子进程而不是线程。

3.redis基本数据类型。

4.zset的底层数据结构,跳表何时增加高度。

5.分布式redis,缓存和数据库读写不一致,答延迟双删。

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值