更新時間:2020-06-23 12:08:01 來源:動力節點 瀏覽2773次
大家對vivo一定不陌生,vivo是一家全球性的移動互聯網智能終端公司,有很多小伙伴都想加入其中。要想進入vivo當java程序員,也會遇到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 相同的方法。
以上就是動力節點java培訓機構的小編針對“vivo校招JAVA筆試題總結”的內容進行的回答,希望對大家有所幫助,如有疑問,請在線咨詢,有專業老師隨時為你服務。
0基礎 0學費 15天面授
有基礎 直達就業
業余時間 高薪轉行
工作1~3年,加薪神器
工作3~5年,晉升架構
提交申請后,顧問老師會電話與您溝通安排學習