vivo校招JAVA笔试题总结_极悦注册
专注Java教育14年 全国咨询/投诉热线:444-1124-454
极悦LOGO图
始于2009,口口相传的Java黄埔军校
首页 学习攻略 vivo校招JAVA笔试题总结

vivo校招JAVA笔试题总结

更新时间:2020-06-23 12:08:01 来源:极悦 浏览2433次

大家对vivo一定不陌生,vivo是一家全球性的移动互联网智能终端公司,有很多小伙伴都想加入其中。要想进入vivo当java程序员,也会遇到,小编整理了一下vivo校招JAVA笔试题总结,希望能够对大家有所帮助。

vivo校招JAVA笔试题

1、接口,抽象类,以及实现,说明一下区别;优缺点,大概这个样子。

大致区别:

接口支持多实现,类不支持多继承,这样接口更利于扩展;

实现接口,必须实现接口中的所有方法,继承抽象类,却不一定要实现他的所有方法;

接口中成员变量都必须被public static final,成员函数都必须被public abstract修饰,抽象类中可以用public protected default abstract;

抽象类的方法可以有默认实现,但是接口不可以;

抽象类的速度要比接口快;

添加新方法:接口,要添加就必须修改实现类,抽象函数却可以有默认的实现;

2、HashMap与HashTable的区别:

底层数据结果哈希表,特点和HashMap是一样的;

Hashtable线程安全集合,运行速度慢;

HashMap线程不安全的集合,运行速度快;

Hashtable命运和Vector是一样的,从JDK1.2开始,被更先进的HashMap取代;

HashMap允许存储nu11值,nu11键;

Hashtable 不允许存储nu11值,nu11键;

3、HashMap存储,两个键值对中key如果哈希值相同是怎么存储的?

哈希值相同,但内容不相同,采用桶存储;

哈希值相同,equals()比较内容也相同的话,就不存储,因为这个情况下,key相等,不允许这种情况发生;

扩充:

HashMap和和Hashtable都是基于哈希表存储数据的,具体就是:内部维护了一个存储数据的Entry数组,HashMap采用链表解决冲突,每一个Entry本质上是一个单向链表。当准备添加一个key-value对时,首先通过hash(key)方法计算hash值,然后通过indexFor(hash,length)求该key-value对的存储位置,计算方法是先用hash&0x7FFFFFFF后,再对length取模,这就保证每一个key-value对都能存入HashMap中,当计算出的位置相同时,由于存入位置是一个链表,则把这个key-value对插入链表头。

4、StringBuffer与StringBuilder的比较:

前者线程安全,但是速度慢,后者线程不安全,但速度快。

StringBuilder类提供与StringBuffer 相同的方法。

vivo校招JAVA笔试题总结

以上就是极悦的小编针对“vivo校招JAVA笔试题总结”的内容进行的回答,希望对大家有所帮助,如有疑问,请在线咨询,有专业老师随时为你服务。

提交申请后,顾问老师会电话与您沟通安排学习

免费课程推荐 >>
技术文档推荐 >>