更新时间:2020-06-23 12:08:01 来源:极悦 浏览2433次
大家对vivo一定不陌生,vivo是一家全球性的移动互联网智能终端公司,有很多小伙伴都想加入其中。要想进入vivo当java程序员,也会遇到,小编整理了一下vivo校招JAVA笔试题总结,希望能够对大家有所帮助。
大致区别:
接口支持多实现,类不支持多继承,这样接口更利于扩展;
实现接口,必须实现接口中的所有方法,继承抽象类,却不一定要实现他的所有方法;
接口中成员变量都必须被public static final,成员函数都必须被public abstract修饰,抽象类中可以用public protected default abstract;
抽象类的方法可以有默认实现,但是接口不可以;
抽象类的速度要比接口快;
添加新方法:接口,要添加就必须修改实现类,抽象函数却可以有默认的实现;
底层数据结果哈希表,特点和HashMap是一样的;
Hashtable线程安全集合,运行速度慢;
HashMap线程不安全的集合,运行速度快;
Hashtable命运和Vector是一样的,从JDK1.2开始,被更先进的HashMap取代;
HashMap允许存储nu11值,nu11键;
Hashtable 不允许存储nu11值,nu11键;
哈希值相同,但内容不相同,采用桶存储;
哈希值相同,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对插入链表头。
前者线程安全,但是速度慢,后者线程不安全,但速度快。
StringBuilder类提供与StringBuffer 相同的方法。
以上就是极悦的小编针对“vivo校招JAVA笔试题总结”的内容进行的回答,希望对大家有所帮助,如有疑问,请在线咨询,有专业老师随时为你服务。
0基础 0学费 15天面授
Java就业班有基础 直达就业
业余时间 高薪转行
Java在职加薪班工作1~3年,加薪神器
工作3~5年,晋升架构
提交申请后,顾问老师会电话与您沟通安排学习