国产精品尤物福利片在线观看_少妇免费毛片久久久久久久久_久久久久成人精品免费播放动漫_日韩av综合在线观看

歡迎來到010在線作文網!

java面試知識點總結

總結 時間:2021-08-31 手機版

  不少人反映java面試的題目不簡單,下面小編為大家搜索整理了java面試知識點總結,希望對大家有所幫助。

  1. Java中的原始數據類型都有哪些,它們的大小及對應的封裝類是什么?

  byte——1 byte——Byte

  short——2 bytes——Short

  int——4 bytes——Integer

  long——8 bytes——Long

  float——4 bytes——Float

  double——8 bytes——Double

  char——2 bytes——Character

  boolean

  boolean數據類型非true即false。

  這個數據類型表示1 bit,但是它的大小并沒有精確定義。

  《Java虛擬機規范》中如是說:“雖然定義了boolean這種數據類型,但是只對它提供了非常有限的支持。在Java虛擬機中沒有任何供boolean值專用的字節碼指令,Java語言表達式所操作的boolean值,在編譯之后都使用Java虛擬機中的int數據類型來代替,而boolean數組將會被編碼成Java虛擬機的byte數組,每個元素boolean元素占8位”。這樣我們可以得出boolean類型單獨使用是4個字節,在數組中又是1個字節。

  那虛擬機為什么要用int來代替boolean呢?為什么不用byte或short,這樣不是更節省內存空間嗎?

  實際上,使用int的原因是,對于當下32位的CPU來說,一次進行32位的數據交換更加高效。

  綜上,我們可以知道:官方文檔對boolean類型沒有給出精確的定義,《Java虛擬機規范》給出了“單獨時使用4個字節,boolean數組時1個字節”的定義,具體還要看虛擬機實現是否按照規范來,所以1個字節、4個字節都是有可能的。這其實是一種時空權衡。 boolean類型的封裝類是Boolean。

  2. 談一談”==“與”equals()"的區別。

  《Think in Java》中說:“關系操作符生成的是一個boolean結果,它們計算的是操作數的值之間的關系”。 "=="判斷的是兩個對象的內存地址是否一樣,適用于原始數據類型和枚舉類型(它們的變量存儲的是值本身,而引用類型變量存儲的是引用);equals是Object類的方法,Object對它的實現是比較內存地址,我們可以重寫這個方法來自定義“相等”這個概念。比如類庫中的String、Date等類就對這個方法進行了重寫。 綜上,對于枚舉類型和原始數據類型的相等性比較,應該使用"==";對于引用類型的相等性比較,應該使用equals方法。

  3. Java中的四種引用及其應用場景是什么?

  強引用: 通常我們使用new操作符創建一個對象時所返回的引用即為強引用

  軟引用: 若一個對象只能通過軟引用到達,那么這個對象在內存不足時會被回收,可用于圖片緩存中,內存不足時系統會自動回收不再使用的Bitmap

  弱引用: 若一個對象只能通過弱引用到達,那么它就會被回收(即使內存充足),同樣可用于圖片緩存中,這時候只要Bitmap不再使用就會被回收

  虛引用: 虛引用是Java中最“弱”的引用,通過它甚至無法獲取被引用的對象,它存在的唯一作用就是當它指向的對象回收時,它本身會被加入到引用隊列中,這樣我們可以知道它指向的對象何時被銷毀。

  4. object中定義了哪些方法?

  clone(), equals(), hashCode(), toString(), notify(), notifyAll(), wait(), finalize(), getClass()

  5. hashCode的作用是什么?

  請參見 散列表的基本原理與實現

  6. ArrayList, LinkedList, Vector的區別是什么?

  ArrayList: 內部采用數組存儲元素,支持高效隨機訪問,支持動態調整大小

  LinkedList: 內部采用鏈表來存儲元素,支持快速插入/刪除元素,但不支持高效地隨機訪問

  Vector: 可以看作線程安全版的ArrayList

  7. String, StringBuilder, StringBuffer的區別是什么?

  String: 不可變的字符序列,若要向其中添加新字符需要創建一個新的String對象

  StringBuilder: 可變字符序列,支持向其中添加新字符(無需創建新對象)

  StringBuffer: 可以看作線程安全版的StringBuilder

  8. Map, Set, List, Queue、Stack的特點及用法。

  Map: Java中存儲鍵值對的數據類型都實現了這個接口,表示“映射表”。支持的兩個核心操作是get(Object key)以及put(K key, V value),分別用來獲取鍵對應的值以及向映射表中插入鍵值對。

  Set: 實現了這個接口的集合類型中不允許存在重復的元素,代表數學意義上的“集合”。它所支持的核心操作有add(E e), remove(Object o), contains(Object o),分別用于添加元素,刪除元素以及判斷給定元素是否存在于集中。

  List: Java中集合框架中的列表類型都實現了這個接口,表示一種有序序列。支持get(int index), add(E e)等操作。

  Queue: Java集合框架中的隊列接口,代表了“先進先出”隊列。支持add(E element),remove()等操作。

  Stack: Java集合框架中表示堆棧的數據類型,堆棧是一種“后進先出”的數據結構。支持push(E item), pop()等操作。

  更詳細的說明請參考官方文檔,對相關數據結構不太熟悉的同學可以參考《算法導論》或其他相關書籍。

  9. HashMap和HashTable的區別

  HashTable是線程安全的,而HashMap不是

  HashMap中允許存在null鍵和null值,而HashTable中不允許

  10. HashMap的實現原理

  簡單的說,HashMap的底層實現是“基于拉鏈法的散列表”。

  詳細分析請參考 深入解析HashMap、HashTable

  11. ConcurrentHashMap的實現原理

  ConcurrentHashMap是支持并發讀寫的HashMap,它的特點是讀取數據時無需加鎖,寫數據時可以保證加鎖粒度盡可能的小。由于其內部采用“分段存儲”,只需對要進行寫操作的數據所在的“段”進行加鎖。關于ConcurrentHashMap底層實現的詳細分析請參考 Java并發編程:并發容器之ConcurrentHashMap

  12. TreeMap, LinkedHashMap, HashMap的區別是什么?

  HashMap的底層實現是散列表,因此它內部存儲的元素是無序的;

  TreeMap的底層實現是紅黑樹,所以它內部的元素的有序的。排序的依據是自然序或者是創建TreeMap時所提供的比較器(Comparator)對象。

  LinkedHashMap可以看作能夠記住插入元素的順序的HashMap。

  13. Collection與Collections的'區別是什么?

  Collection是Java集合框架中的基本接口;

  Collections是Java集合框架提供的一個工具類,其中包含了大量用于操作或返回集合的靜態方法。

  14. 對于“try-catch-finally”,若try語句塊中包含“return”語句,finally語句塊會執行嗎?

  會執行。只有兩種情況finally塊中的語句不會被執行:**

  調用了System.exit()方法;

  JVM“崩潰”了。

  15. Java中的異常層次結構

  Java中的異常層次結構如下圖所示:

  我們可以看到Throwable類是異常層級中的基類。

  Error類表示內部錯誤,這類錯誤使我們無法控制的;Exception表示異常,RuntimeException及其子類屬于未檢查異常,這類異常包括ArrayIndexOutOfBoundsException、NullPointerException等,我們應該通過條件判斷等方式語句避免未檢查異常的發生。IOException及其子類屬于已檢查異常,編譯器會檢查我們是否為所有可能拋出的已檢查異常提供了異常處理器,若沒有則會報錯。對于未檢查異常,我們無需捕獲(當然Java也允許我們捕獲,但我們應該做的事避免未檢查異常的發生)。

  16. Java面向對象的三個特征與含義

  三大特征:封裝、繼承、多態。詳細介紹請戳 Java面向對象三大特性

  17. Override, Overload的含義與區別

  Override表示“重寫”,是子類對父類中同一方法的重新定義

  Overload表示“重載”,也就是定義一個與已定義方法名稱相同但簽名不同的新方法**

  18. 接口與抽象類的區別

  接口是一種約定,實現接口的類要遵循這個約定;

  抽象類本質上是一個類,使用抽象類的代價要比接口大。

  接口與抽象類的對比如下:

  抽象類中可以包含屬性,方法(包含抽象方法與有著具體實現的方法),常量;接口只能包含常量和方法聲明。

  抽象類中的方法和成員變量可以定義可見性(比如public、private等);而接口中的方法只能為public(缺省為public)。

  一個子類只能有一個父類(具體類或抽象類);而一個接口可以繼承一個多個接口,一個類也可以實現多個接口。

  子類中實現父類中的抽象方法時,可見性可以大于等于父類中的;而接口實現類中的接口 方法的可見性只能與接口中相同(public)。

  19. 靜態內部類與非靜態內部類的區別

  靜態內部類不會持有外圍類的引用,而非靜態內部類會隱式持有外圍類的一個引用。

  20. Java中多態的實現原理

  所謂多態,指的就是父類引用指向子類對象,調用方法時會調用子類的實現而不是父類的實現。多態的實現的關鍵在于“動態綁定”。詳細介紹請戳 Java動態綁定的內部實現機制

  21. 簡述Java中創建新線程的兩種方法

  繼承Thread類(假設子類為MyThread),并重寫run()方法,然后new一個MyThread對象并對其調用start()即可啟動新線程。

  實現Runnable接口(假設實現類為MyRunnable),而后將MyRunnable對象作為參數傳入Thread構造器,在得到的Thread對象上調用start()方法即可。

  22. 簡述Java中進行線程同步的方法

  volatile: Java Memory Model保證了對同一個volatile變量的寫happens before對它的讀;

  synchronized: 可以來對一個代碼塊或是對一個方法上鎖,被“鎖住”的地方稱為臨界區,進入臨界區的線程會獲取對象的monitor,這樣其他嘗試進入臨界區的線程會因無法獲取monitor而被阻塞。由于等待另一個線程釋放monitor而被阻塞的線程無法被中斷。

  ReentrantLock: 嘗試獲取鎖的線程可以被中斷并可以設置超時參數。

【java面試知識點總結】相關文章:

1.java集合知識點總結

2.java框架知識點總結

3.java基礎知識點總結

4.java實訓的總結

5.Java面試筆試題

6.Java線程面試題

7.高級Java面試題匯總

8.java面試題及答案


本文來源http://www.nvnqwx.com/shiyongwen/zongjie/2457155.htm
以上內容來自互聯網,請自行判斷內容的正確性。若本站收錄的信息無意侵犯了貴司版權,請給我們來信(zaixianzuowenhezi@gmail.com),我們會及時處理和回復,謝謝.
国产精品尤物福利片在线观看_少妇免费毛片久久久久久久久_久久久久成人精品免费播放动漫_日韩av综合在线观看
无码av天堂一区二区三区| 国产一区二区三区高清| 国产精品333| 国产精品永久在线| 国产视频不卡| 国产亚洲精品自在久久| 精品无码av无码免费专区| 红桃一区二区三区| 欧美激情一区二区三区在线视频| 日韩免费av一区二区三区| 人人做人人澡人人爽欧美| 热门国产精品亚洲第一区在线| 日韩区国产区| 欧美怡红院视频一区二区三区| 欧美精品免费观看二区| 国产一区二区黄色| 高清一区二区三区日本久 | 久久久999免费视频| 91精品美女在线| 国产高清不卡av| 日韩在线观看免费| 国产精品精品一区二区三区午夜版| 国产精品第2页| 一级日韩一区在线观看| 色综合久久av| 欧美日韩精品久久| 精品亚洲第一| 不卡影院一区二区| 国产精彩免费视频| 久久精品99久久久久久久久| 欧美日韩福利电影| 日本午夜精品一区二区三区| 黄色国产精品视频| 国产精品一区二区电影| 久久免费视频网| 国产精品老女人视频| 一区二区免费电影| 日韩精品无码一区二区三区| 国产在线精品二区| 国产精品50p| 国产精品福利片| 天天综合五月天| 精品视频一区二区在线| 成人免费aaa| 日韩亚洲国产中文字幕| 色综合久综合久久综合久鬼88| 欧美一级视频在线播放| 蜜桃视频成人| 久久综合入口| 国产精品国模在线| 三级三级久久三级久久18| 黄色一级免费大片| 91久久国产精品| 国产精品高潮呻吟久久av无限| 午夜精品久久久久久99热软件| 欧美中文字幕在线视频| av一区二区三区免费| 日韩在线观看免费高清| 久久久久久97| 黄色www网站| 91久久精品国产91性色| 国产精品久久久久久久久久东京| 日日夜夜精品网站| 国产免费高清一区| www.亚洲成人| 亚洲第一页在线视频| 国产尤物91| 国产成人手机视频| 日韩一二三区不卡在线视频| 97公开免费视频| 久久夜色撩人精品| 欧美在线亚洲一区| 国产夫妻自拍一区| 欧美激情va永久在线播放| 欧美日韩亚洲一二三| 久久免费精品日本久久中文字幕| 宅男在线精品国产免费观看| 国产综合福利在线| 日韩视频在线免费| 日韩av在线播放不卡| av在线不卡观看| 欧美精品久久久久久久免费观看| 免费看又黄又无码的网站| xxx一区二区| 欧美亚洲黄色片| www.亚洲一区| 欧美综合一区第一页| 色琪琪综合男人的天堂aⅴ视频| 亚洲图片小说在线| 国产精品一区二区在线观看| 久热精品视频在线观看一区| 免费在线观看的毛片| 俺也去精品视频在线观看| 日韩国产精品一区二区| 久久青青草综合| 日韩中文不卡| 久久人人97超碰人人澡爱香蕉| 午夜精品久久久99热福利| 97久久久免费福利网址| 亚洲综合自拍一区| 成人免费观看毛片| 亚洲乱码日产精品bd在线观看| www亚洲国产| 一区二区在线中文字幕电影视频| 国产日韩欧美在线| 精品久久久久久乱码天堂| 国产一级片91| 欧美激情精品久久久久久| 国产精品一区av| 亚州欧美日韩中文视频| 久久精品国产精品亚洲精品色| 青青在线免费观看视频| 国产精品嫩草影院一区二区| 免费精品视频一区| 欧美成人四级hd版| 成人免费观看cn| 亚洲国产一区二区在线| 色婷婷综合久久久久| 国模私拍一区二区三区| 国产精品久久久久久久久久免费| 国产日韩精品在线观看| 亚洲成人第一| 日韩有码片在线观看| 国内精品免费午夜毛片| 一区二区三区欧美成人| 91av在线国产| 欧美人与性禽动交精品| 精品免费二区三区三区高中清不卡| 国产精品自产拍高潮在线观看| 亚洲蜜桃av| 久久久久久国产三级电影| 国产又黄又爽免费视频| 亚洲激情一区二区三区| 国产精品日韩专区| 国模极品一区二区三区| 亚洲欧美日韩精品综合在线观看 | 国产区一区二区| 色综合av综合无码综合网站| 国产成人小视频在线观看| 国产欧美一区二区三区不卡高清| 亚洲国产欧美一区二区三区不卡| 精品激情国产视频| 91精品视频大全| 欧美日韩亚洲一区二区三区四区| 亚洲一区三区电影在线观看| 久久久久久伊人| 国产精品香蕉国产| 黄www在线观看| 日本在线播放一区| 宅男在线精品国产免费观看| 日韩一区av在线| www.欧美日本| 国内揄拍国内精品| 午夜免费在线观看精品视频| 久久综合色88| 国产噜噜噜噜噜久久久久久久久| 青青草国产精品一区二区| 亚洲欧洲精品一区| 美女福利视频一区| 久草视频国产在线| 成年人网站国产| 精品一区二区久久久久久久网站| 日韩av一级大片| 久久久久久国产精品| 国产精品视频网站| 国产极品在线视频| 国产裸体免费无遮挡| 欧美精品第三页| 日本10禁啪啪无遮挡免费一区二区| 亚洲国产精品一区二区第四页av| 国产精品露脸av在线| 色偷偷偷亚洲综合网另类| 97久久精品人搡人人玩| 国产欧美综合精品一区二区| 欧洲亚洲在线视频| 视频一区二区综合| 亚洲一区亚洲二区| 一区二区三区欧美在线| 国产精品高清在线| 国产精品偷伦免费视频观看的 | 久久的精品视频| 久久手机免费视频| 国产白丝袜美女久久久久| av日韩中文字幕| 国产裸体写真av一区二区| 国产综合久久久久久| 日韩国产一级片| 日本免费黄视频| 欧美一区二区三区综合| 一本—道久久a久久精品蜜桃| 精品国产一区二区三区日日嗨| 国产精品美女在线观看| 国产精品日韩在线观看| 国产精品日本精品| 国产精品久久久久9999爆乳 | 伊人久久大香线蕉成人综合网| 欧美成在线视频| 国产99久久九九精品无码| 美女精品久久久| 精品成在人线av无码免费看|