华为7月面试八股文及答案

写在前面

大家好,我是小牛, 微软程序员一枚,之前经常看见大家在 牛客上有 面经分享,但大多数没有答案。由于小牛和几个BAT小伙伴整理了相关八股文题库,这次就当一回工具人,把题目和对应的答案奉上。
 
这次面经基本都被我之前整理的大厂面试八股文涵盖了,有兴趣的同学可以到我之前的讨论贴查看我之前整理的八股文

稍微点评一下,华为这波面试我摘取了其中八股文部分,整体的这次面试还是基于面试者项目展开的,大家在准备项目简历的过程中,还是得注意扬长避短!

StringBuff和StringBuilder

String类采用利用final修饰的字符数组进行字符串保存,因此不可变。如果对String类型对象修改,需要新建对象,将老字符和新增加的字符一并存进去。

StringBuilder,采用无final修饰的字符数组进行保存,因此可变。但线程不安全。

StringBuffer,采用无final修饰的字符数组进行保存,可理解为实现线程安全的StringBuilder。

compator和compatable的区别

Comparable 是一个接口,用于对象内部的比较方式,该接口需要实现的方法是:

public interface Comparable<T{
    public int compareTo(T o);
}

Comapator 也是一个接口,该接口有个compare方法,该接口需要实现的方法是:

public interface Comparator<T{
    int compare(T o1, T o2);
}

除该方法外,comparator还可以实现其他方法。

线程池类型

  1. newCachedThreadPool 可缓存线程池,可设置最小线程数和最大线程数,线程空闲1分钟后自动销毁。
  2. newFixedThreadPool 指定工作线程数量线程池。
  3. newSingleThreadExecutor 单线程Executor。
  4. newScheduleThreadPool 支持定时任务的指定工作线程数量线程池。
  5. newSingleThreadScheduledExecutor 支持定时任务的单线程Executor。

Arraylist和LinkedList

ArrayList和LinkedList都是可伸缩的数组,即可以动态改变长度的数组。ArrayList基于存储元素的Object[] array来实现的,它们会在内存中开辟一块连续的空间来存储,支持下标、索引访问。但在涉及插入元素时可能需要移动容器中的元素,插入效率较低。当存储元素超过容器的初始化容量大小,ArrayList均会进行扩容。ArrayList不是线程安全的,其方法不具有同步性质。LinkedList也不是线程安全的。LinkedList采用双向列表实现,对数据索引需要从头开始遍历,因此随机访问效率较低,但在插入元素的时候不需要对数据进行移动,插入效率较高。

Redis保护机制RDB AOF

RDB即将当前数据生成快照,并保存于硬盘中。可以通过手动命令,也可以设置自动触发。AOF通过日志,对数据的写入修改操作进行记录。这种持久化方式实时性更好。通过配置文件打开AOF。




#Java求职##学习路径#
全部评论
感谢楼主分享,感谢楼主分享,2021各大厂招聘信息文档汇总:https://docs.qq.com/sheet/DY2ZmT0ZudElOeU92?tab=BB08J2
点赞 回复 分享
发布于 2021-07-22 08:36

相关推荐

和蔼:在竞争中脱颖而出,厉害! 但是有一个小问题:谁问你了?😡我的意思是,谁在意?我告诉你,根本没人问你,在我们之中0人问了你,我把所有问你的人都请来 party 了,到场人数是0个人,誰问你了?WHO ASKED?谁问汝矣?誰があなたに聞きましたか?누가 물어봤어?我爬上了珠穆朗玛峰也没找到谁问你了,我刚刚潜入了世界上最大的射电望远镜也没开到那个问你的人的盒,在找到谁问你之前我连癌症的解药都发明了出来,我开了最大距离渲染也没找到谁问你了我活在这个被辐射蹂躏了多年的破碎世界的坟墓里目睹全球核战争把人类文明毁灭也没见到谁问你了
点赞 评论 收藏
分享
10-15 09:13
已编辑
天津大学 soc前端设计
点赞 评论 收藏
分享
牛客146600443号:92的能看上这3k,5k在搞笑呢
点赞 评论 收藏
分享
6 27 评论
分享
牛客网
牛客企业服务