【一线大厂】Java高级岗面试,到底问了啥

       一生猿,一世猿。
                    —— 猿医生·yys 

                           

 

 

一、前言

   吾亦不忘大厂梦,吾亦不负此生行;互联网一线大厂,Java高级岗面试,到底问了啥?

       在此,记录一下,分享给大家。

 

二、快手   

 

快手一面

     Switch数据类型支持哪些?
     Java有哪些锁?区别在哪?底层如何实现的?为什么非公平锁效率高?
     Java内存模型
     Java内存结构     
     线程池使用场景及其核心参数说明、拒绝策略(拒绝策略不理想)
     Threadlocal原理和使用场景(不理想)
     实现多线程通讯
     Mybatis初始化和执行原理
     Spring mvc初始化和执行原理
     Springboot如何自定义starter
     项目中使用了springcloud哪些组件及其原理
     Redis数据类型
     Redis淘汰策略
     Redis集群方式
     Redis中string底层结构(不理想)
     MQ工作方式
     MySQL数据库引擎比较(不理想)
     事务隔离级别说明
 
     项目中使用哪些设计模式?(策略,模板,观察者)
     批量导出的业务1000个,如何实现(多线程、压缩传输)
     什么场景会出现栈溢出
     一般怎么优化慢查询
     什么情况下会使得索引失效
     Redis集群时分布式锁的问题(主节点锁信息未同步至从节点,主宕机)(不理想)

 

快手二面

     Redis分布式锁中加锁与解锁的详细细节询问,过期如何续命(不理想)
     Spring的ApplicationEvent的使用场景
     SpringMVC拦截器和过滤器区别(不理想)
     一个项目中可以有多个dispatcherServelt吗?为什么?(不理想)
     SpringAOP涉及到什么设计模式?底层原理
     SpringBoot配置文件加载优先级(不理想)
     SpringBoot启动原理
     多层接口传参相同的问题怎么解决(估计是问ThreadLocal)(不理想)
     Redis集群有哪些方式
     MySQL事务隔离级别
     MySQL聚簇索引(不理想)
     给定业务场景写sql(不理想)
     重写和重载的测试题,参数列表相同,只是泛型不同,会不会报错
     写一个单例(我写了最简单的饿汉式,但是告诉了人家,其他的实现方式,及如何防止反射反序列化破坏)

 

快手三面

     ArrayList底层原理
     ArrayList扩容、删除、添加原理
     线程池核心参数说明
     手写一个定时的线程池(不理想)
     Mysql聚簇索引和非聚簇索引说明(不理想)
     Java自带的序列化方式(不理想)
     项目使用了SpringCloud哪些组件
     Eureka属于可用还是一致?为什么
     Eureka实现服务治理的原理
     Ribbon原理
     ZK集群原理
     Spring注解生效的原理(AOP底层原理)
     给定一个业务场景,手写SQL(不理想)
     项目中如何使用策略模式

 

 

三、阿里   

 

     HashMap底层数据结构和原理
     ConcurrentHashMap线程安全的原理
     Sync和Lock的区别,底层原理
     CAS中ABA如何解决
     类加载机制中双亲委派(不理想)
     ThreadLocal底层原理
     Java线程池关键参数及其拒绝策略说明
     Jvm内存结构详细阐述
     MySQL索引底层结构(不理想)
     聚簇索引和非聚簇索引
     如何优化索引查询
     组合索引的使用场景(不理想)
     MySQL隔离级别
     脏读、幻读的定义
     AOP底层原理
     JDK动态代理和CGlib动态代理对比,各自底层的实现原理
     FactoryBean和BeanFactory的区别
     SpringMVC的拦截器和Filter的异同,自己配置过吗?(不理想)
     Nginx的负载均衡方式有哪些?正向代理和反向代理的区别
     RPC框架中服务消费者如何拿到服务提供者的请求信息,各自职责(估计是在问心跳包)(不理想)
     注册中心的治理
     Hystrix熔断器的工作原理,熔断半开是指什么(不理想)
     Ribbon使用过吗?
     Kafka消费者,生产者,分区,topic的关系是什么,消费者与分区的数量的对应关系是什么
     分布式事务如何解决的?事务消息和普通消息的区别
     BASE理论和CAP理论是指什么
     ES中倒排索引和普通索引的区别(不会)
     Mybatis中二级缓存和一级缓存的区别(我把Mybatis整个流程阐述了一次)
     Netty中粘包和拆包是指什么?
     TCP中为什么握手是三次而挥手是四次?(不理想)

 

四、转转     

     用过什么设计模式?描述一下场景
     SpringBean生命周期
     事务的原理
     Spring声明式事务为什么能每次拿到相同的connection(估计是在问ThreadLocal)(不理想)
     Springboot的starter组件的结构是什么样的
     HashMap1.7和1.8的区别在哪
     Sync和ReentrantLock的区别
     公平锁和非公平锁的区别
     给了一个实际出现线程安全的场景,判断哪些操作会出现阻塞(不理想,没理解问题)
     JVM内存结构的介绍
     垃圾回收算法有哪些?重点说说复制算法
     常用的垃圾回事器有哪些?CMS的原理阐述一下
     Netty使用过吗?讲下原理
     粘包和拆包的解决方案有哪些?
     使用过哪些Redis的数据结构
     MQ如何解决分布式事务
     消息幂等性如何解决
     消息顺序消费如何解决,哪些MQ有这个特性
     ThreadLocal的原理(不理想)
     Redis实现分布式锁中,过期时间如何设置的(估计是在问NX和PX如何保持一致性)(不理想)
     线程池有哪些参数是自己用过的,具体的使用场景(不理想)
     匿名内部类使用外部变量为什么必须是final修饰的(不理想)
     一条TCP连接上可以发多少个HTTP请求(不知道)
     看一段代码(SpringAOP使得this失效)
     手写消费者和生产者(不理想)

 

希望可以帮助到同样拥有大厂梦的屏幕前的你  ~ 记得给笔者点个赞 ~

~ ~ 如需面试录音文件可私信我,点个关注呗 ~~

 

©️2020 CSDN 皮肤主题: 编程工作室 设计师:CSDN官方博客 返回首页