大战熟女丰满人妻av-荡女精品导航-岛国aaaa级午夜福利片-岛国av动作片在线观看-岛国av无码免费无禁网站-岛国大片激情做爰视频

專注Java教育14年 全國咨詢/投訴熱線:400-8080-105
動力節點LOGO圖
始于2009,口口相傳的Java黃埔軍校
首頁 學習攻略 Java學習 精選聯通java筆試題庫

精選聯通java筆試題庫

更新時間:2020-02-28 11:08:06 來源:動力節點 瀏覽3925次


  1、set集合從原理上如何保證不重復


  1)在往set中添加元素時,如果指定元素不存在,則添加成功。也就是說,如果set中不存在(e==null?e1==null:e.queals(e1))的元素e1,則e1能添加到set中。


  2)具體來講:當向HashSet中添加元素的時候,首先計算元素的hashcode值,然后用這個(元素的hashcode)%(HashMap集合的大小)+1計算出這個元素的存儲位置,如果這個位置位空,就將元素添加進去;如果不為空,則用equals方法比較元素是否相等,相等就不添加,否則找一個空位添加。


精選聯通java筆試題庫


  2、HashMap和HashTable的主要區別是什么?,兩者底層實現的數據結構是什么?


  HashMap和HashTable的區別:


  二者都實現了Map接口,是將惟一鍵映射到特定的值上;主要區別在于:


  1)HashMap沒有排序,允許一個null鍵和多個null值,而Hashtable不允許;


  2)HashMap把Hashtable的contains方法去掉了,改成containsvalue和


  containsKey,因為contains方法容易讓人引起誤解;


  3)Hashtable繼承自Dictionary類,HashMap是Java1.2引進的Map接口的實現;


  4)Hashtable的方法是Synchronize的,而HashMap不是,在多個線程訪問Hashtable時,不需要自己為它的方法實現同步,而HashMap就必須為之提供外同步。Hashtable和HashMap采用的hash/rehash算法大致一樣,所以性能不會有很大的差異。


  HashMap和HashTable的底層實現數據結構:


  HashMap和Hashtable的底層實現都是數組+鏈表結構實現的


  3、HashMap何時擴容,擴容的算法是什么?


  HashMap何時擴容:


  當向容器添加元素的時候,會判斷當前容器的元素個數,如果大于等于閾值---即當前數組的長度乘以加載因子的值的時候,就要自動擴容


  擴容的算法是什么:


  擴容(resize)就是重新計算容量,向HashMap對象里不停的添加元素,而HashMap對象內部的數組無法裝載更多的元素時,對象就需要擴大數組的長度,以便能裝入更多的元素。當然Java里的數組是無法自動擴容的,方法是使用一個新的數組代替已有的容量小的數組


  4、Java的虛擬機JVM的兩個內存:棧內存和堆內存的區別是什么?


  Java把內存劃分成兩種:一種是棧內存,一種是堆內存。兩者的區別是:


  1)棧內存:在函數中定義的一些基本類型的變量和對象的引用變量都在函數的棧內存中分配。當在一段代碼塊定義一個變量時,Java就在棧中為這個變量分配內存空間,當超過變量的作用域后,Java會自動釋放掉為該變量所分配的內存空間,該內存空間可以立即被另作他用。


  2)堆內存:堆內存用來存放由new創建的對象和數組。在堆中分配的內存,由Java虛擬機的自動垃圾回收器來管理。


  5、Java中對異常是如何進行分類的?


  異常整體分類:


  1)Java異常結構中定義有Throwable類。Exception和Error為其子類。


  2)其中Exception表示由于網絡故障、文件損壞、設備錯誤、用戶輸入非法情況導致的異常;


  3)而Error標識Java運行時環境出現的錯誤,例如:JVM內存耗盡。


  6、數據庫設計中常講的三范式是指什么?


  1)第一范式1NF(域的原子性)


  如果數據庫表中的所有字段值都是不可分解的原子值,就說明該數據庫表滿足了第一范式


  2)第二范式2NF(表中除主鍵外的字段都完全依賴主鍵)


  第二范式是在第一范式基礎上建立的。第二范式有兩個重點:(1)表中必須有主鍵;(2)其他非主屬性必須完全依賴主鍵,不能只依賴主鍵的一部分(主要針對聯合主鍵而言)。


  3)第三范式3NF(表中除主鍵外的字段都完全直接依賴,不能是傳遞依賴)


  不能是傳遞依賴,即不能存在:非主鍵列A依賴于非主鍵列B,非主鍵列B依賴于主鍵的情況。第二范式和第三范式區分的關鍵點:2NF:非主鍵列是否完全依賴于主鍵,還是依賴于主鍵的一部分;3NF:非主鍵列是直接依賴于主鍵,還是直接依賴于非主鍵列。


  7、Java中的線程池共有幾種?


  Java四種線程池


  第一種:newCachedThreadPool


  創建一個可根據需要創建新線程的線程池,但是在以前構造的線程可用時將重用它們。


  第二種:newFixedThreadPool


  創建一個指定工作線程數量的線程池


  第三種:newScheduledThreadPool


  創建一個線程池,它可安排在給定延遲后運行命令或者定期地執行。


  第四種:newSingleThreadExecutor


  創建一個使用單個worker線程的Executor,以無界隊列方式來運行該線程。


  8、volatile和synchronized區別


  volatile和synchronized簡介:


  在Java中,為了保證多線程讀寫數據時保證數據的一致性,可以采用兩種方式:


  1)使用synchronized關鍵字


  2)使用volatile關鍵字:用一句話概括volatile,它能夠使變量在值發生改變時能盡快地讓其他線程知道。


  兩者的區別:


  1)volatile本質是在告訴jvm當前變量在寄存器中的值是不確定的,需要從主存中讀取,synchronized則是鎖定當前變量,只有當前線程可以訪問該變量,其他線程被阻塞住.


  2)volatile僅能使用在變量級別,synchronized則可以使用在變量,方法.


  3)volatile僅能實現變量的修改可見性,而synchronized則可以保證變量的修改可見性和原子性.


  4)volatile不會造成線程的阻塞,而synchronized可能會造成線程的阻塞.


精選聯通java筆試題庫


      以上就是動力節點Java培訓機構小編介紹的“精選聯通java筆試題庫”的內容,希望對大家有幫助,如有疑問,請在線咨詢,有專業老師隨時為你服務。


提交申請后,顧問老師會電話與您溝通安排學習

免費課程推薦 >>
技術文檔推薦 >>
主站蜘蛛池模板: 99热这里只有精品国产在热久久 | 奇米888888 | 久热99这里只有精品视频6 | 四虎新地址 | 日韩久久网| 国产一级特黄a大片99 | 久久精品亚洲日本筱田优 | 日韩欧美综合视频 | 国产一区二区久久精品 | 国产天堂| 亚洲国产爱 | 欧美性猛交xxxxx按摩欧美 | 性生大片一级毛片免费观看 | 一级欧美毛片成人免费视频 | 爱操在线视频 | 婷婷五 在线播放 | 九九99国产精品视频 | 欧美另类第一页 | 欧美一级看片a免费观看 | 日韩se| 国产精品成人免费观看 | 中文字幕精品在线观看 | 国产成人精品日本 | 日本囗交做爰视频欧美 | 91成人免费在线视频 | 国产精品久久久久久永久牛牛 | 亚洲欧洲久久 | 四虎在线成人免费网站 | 中文国产欧美在线观看 | 69香蕉视频| 欧美日韩中文视频 | 久久免费视频99 | 国产综合视频在线 | 国自产拍在线视频天天更新 | 99精品视频免费 | 操操操网站 | 日本在线亚州精品视频在线 | 99热久久这里只有精品99 | 四虎最新紧急更新地址 | 手机看片自拍日韩日韩高清 | 牛牛本精品99久久精品 |