美文网首页开发技巧Java学习笔记Java 杂谈
2020年6月最新BAT互联网大厂JAVA岗高频面试题:阿里+华

2020年6月最新BAT互联网大厂JAVA岗高频面试题:阿里+华

作者: 神奇小汤圆 | 来源:发表于2020-06-17 19:24 被阅读0次

    前言

    近期根据网友分享大厂面试题目,今天我将网友面试的BAT等大厂JAVA岗面试题目整理出来,希望能够帮助大家!

    阿里巴巴篇

    1.题目:NFS 和 SMB 是最常见的两种 NAS(Network Attached Storage)协议,当把一个文件系统同时通过 NFS 和 SMB 协议共享给多个主机访问时,以下哪些说法是错误的:(多选)

    A. 不可能有这样的操作,即把一个文件系统同时通过 NFS 和 SMB协议共享给多个主机访问。

    B. 主机 a 的用户通过NFS 协议创建的文件或者目录,另一个主机 b的用户不能通过 SMB 协议将其删除。

    C. 在同一个目录下,主机 a 通过 NFS 协议看到文件 file.txt,主机b 通过 SMB 协议也看到文件 file.txt,那么它们是同一个文件。

    D. 主机 a 通过 NFS 协议,以及主机 b 通过 SMB 协议,都可以通过主机端的数据缓存,提升文件访问性能。

    参考答案:A,B,C

    2.ConcurrentHashMap原理,JDK1.8都有什么新特性

    3.HBase底层数据存储的结构

    4.java内存模型分为了几块区域?元空间里有些啥?

    5.jdk hashmap 底层存储?红黑树的特点,为啥不用数组用红黑树?数据库用过吗?用的啥数据库,mysql用的啥引擎?为啥数据库底层用B+树不用红黑树?

    6.JVM内存模型了解下,是否有过调优经验(大互联公司)

    7.题目:MySQL 的数据如何恢复到任意时间点?

    参考答案:恢复到任意时间点以定时的做全量备份,以及备份增量的 binlog 日志为前提。恢复到任意时间点首先将全量备份恢复之后,在此基础上回放增加的 binlog 直至指定的时间点。

    8.NIO知道吗? nio底层调用了啥?啥是非阻塞IO?

    9.string类的用法

    10.题目:从 innodb 的索引结构分析,为什么索引的 key 长度不能太长?

    参考答案:key 太长会导致一个页当中能够存放的 key 的数目变少,间接导致索引树的页数目变多,索引层次增加,从而影响整体查询变更的效率。

    11.对象存在java内存的那块区域里面

    12.多线程,AtomicInteger底层用的啥?cas的原理,AtomicInteger用了Voliate么?voliate的原理,变量加Voliate被修改了其他线程能立刻知道么?

    13.知道spring AOP是如何实现的么,动态代理和CGlib分别是如何实现的

    14.了解Dubbo框架不,看过源码没,了解实现原理吗?

    15.给定一个整数数组和一个整数,返回两个数组的索引,这两个索引指向的数字的加和等于指定的整数。需要最优的算法,分析算法的空间和时间复杂度

    华为篇

    1.java的反射机制了解吗?

    2.Java的数据类型,线程,内存

    3.rabbitMQ有哪些关键的组成部分?

    4.STL中vector和map的区别,map底层如何删除一个元素

    5.String,StringBuffer,聊了比较多的String相关的

    6.对Spring的理解,说说里面用到的设计模式

    7.多线程中生产者和消费者如何保证同步

    8.浏览器输入一个地址,数据在网络中是怎么传输的,每一层加了什么?

    9.你用的java哪个版本,java1.8有什么新特性?

    10.你用过什么消息中间件?

    11.说一下mysql中隔离性的4个隔离级别,如何保证可重复读,mvvc了解吗?它的原理是什么

    12.写代码:判断一棵树是不是平衡二叉树

    13.自旋锁和互斥量的区别

    百度篇

    1.concurrentHashmap是安全的吧,那你知道concurrentHashmap的size()怎么求吗

    2.MySQL用的什么索引?

    3.ReentrantLock如何实现非公平锁的?重点是如何实现“非公平”,和“公平锁”有什么区别?

    4.Synchronized的底层原理,字节码层面如何实现加锁的?

    5.编程题:给定一颗二叉树,实现一个方法让每个节点新增一个next,next指向当前节点右边的第一个兄弟节点。

    6.场景题:有A、B、C三个方法,分别是循环输出A,输出B,输出C 10次,使用多线程实现按照“ABC”的顺序输出10次

    7.反转链表按k,最长重复子串

    8.用过Spring吧,说一说Spring中Bean的加载过程,BeanFactory和FactoryBean有什么区别?

    9.内存泄漏是什么,怎么检测

    10.什么是线程池

    11.写一个list删除目标元素的函数,然后写个测试用例测试一下能不能通,为什么不能正向遍历

    12.消费者生产者,写写伪代码

    美团篇

    1.mybatis怎么实现orm 说说自己理解 让你落地怎么去做

    2.PU飙升,只有JAVA进程,如何解决

    3.Redis和ZooKeeper如何实现分布式锁以及区别

    4.String 和 Hash的使用场景

    5.StringBuilder和StringBuffer的区别

    6.ZooKeeper如何实现数据一致性

    7.分布式锁的实现原理

    8.简单讲一下你使用过的设计模式,然后让我写了一个线程安全的单例

    9.实习做了什么,怎么做的,有什么收获

    10.线程有几个状态,就绪和阻塞有什么不同,知道线程池的实现原理不,核心参数讲一下,讲一下线程池分配线程的方法,项目中用过几种加锁的方法,threadlocal的实现原理

    11.一个算法题假设有N级台阶每次可以上1或者2 阶,有几种方法上N级台阶

    字节跳动篇

    1.hashmap,hashmap扩容是需要重新哈希吗?如果二次哈希后还是哈希冲突呢?

    2.integer和int的自动装箱和拆箱以及为什么要用integer类

    3.Java的线程都有哪几种状态

    4.Java堆中有哪些GC算法

    5.Java有哪些引用类型,分别是什么特点

    6.JMM模型,内存可见性介绍下

    7.JVM内存模型分为哪几个区域

    8.static final修饰的一个int 进行修改后是否需要进行重新编译

    9.synchronized和volatile区别

    10.wait()和sleep()有什么区别

    11.并发中的方法

    12.抽象类和接口的区别,什么时候用抽象类什么时候用接口

    13.二叉树镜像,时间复杂度,空间复杂度

    14.反转链表按k,最长重复子串

    15.介绍2个设计模式

    16.算法题: 反转链表,删除排好序数组中重复元素,第一题秒了,第二题用两根指针卡了可能1分钟在左指针的移动上。

    17.推荐系统,考虑过分布式系统嘛,QPS怎么测试出来

    以上就是一线BAT互联网大厂JAVA岗经典面试题,小编把这些面试题目以及答案收集总结出来的一套BAT大厂面试资料专题包,在这里免费分享给大家,主要还是希望大家在如今大环境不好的情况下面试能够顺利一点,希望可以帮助到大家。

    转发+关注后台私信回复(666)获取互联网大厂面试面经

    转发+关注后台私信回复(666)获取spring系列面试题

    转发+关注后台私信回复(666)获取一线互联网大厂面试面经

    JVM调优

    转发+关注后台私信回复(666)获取283页互联网P7《java核心知识点》PDF文档一份

    转发+关注后台私信回复(666)获取283页互联网P7《java核心知识点》PDF文档一份

    如何获取?

    转发这篇文章,关注我,私信回复“666”即可获取高清大纲,以上 spring,MyBatis,Netty源码分析,高并发、高性能、分布式、微服务架构的原理,JVM性能优化、分布式架构

    如何私信?

    关注我后,在手机,点击头像进我的主页,主页上方右上角有个私信,点击私信,如何回复关键字“666”即可

    相关文章

      网友评论

        本文标题:2020年6月最新BAT互联网大厂JAVA岗高频面试题:阿里+华

        本文链接:https://www.haomeiwen.com/subject/kkfexktx.html