JAVA知識點總結篇(三)
阿新 • • 發佈:2018-10-01
null 軟件開發 形式 業務需求 存儲 valueof 實現接口 運行 包裝
抽象類
- 使用規則
- abstract定義抽象類;
- abstract定義抽象方法,只有聲明,不需要實現;
- 包含抽象方法的類是抽象類;
- 抽象類中可以包含普通方法,也可以沒有抽象方法;
- 抽象類不能直接創建,可以定義引用變量;
接口
- 定義:一種特殊的類,由全局常量和公共的抽象方法所組成;
- 類是一種具體實現體,而接口定義了某一批類所要遵守的規範,接口不關心這些類的內部數據,也不關心這些類中方法的實現細節,它只規定這些類中必須提供某些方法;
- 接口使用:一個類可以實現一個或多個接口,實現接口使用implements關鍵字。Java中一個類只能繼承一個父類,可以通過多個接口做補充;
UML
- 定義:統一建模語言或標準建模語言,是一個支持模型化和軟件系統開發的圖形化語言,為軟件開發的所有階段提供模型化和可視化支持;
異常
- 處理運行時異常時,采用邏輯去合理規避同時輔助try-catch處理;
- 在多重catch塊後面,可以加一個catch(Exception)來處理可能被遺漏的異常;
- 對於不確定的代碼,也可以加上try-catc,處理潛在的異常;
- 盡量去處理異常,切忌只是簡單的調用printStackTrace()去打印輸出;
- 具體如何處理異常,要根據不用的業務需求和異常類型去決定;
- 盡量天劍finally語句塊去釋放占用的資源;
字符串
- String對象創建後不能被修改,是不可變的,所謂的修改其實是創建了新的對象,所指向的內存空間不同;
- 每次new一個字符串就是產生了一個新對象,即便兩個字符串的內容相同,使用"=="比較時也為
false
,若只需比較內容是否相同,應使用eauals()
方法;
==
和equals()
的區別==
判斷兩個字符串在內存中首地址是否相同,即判斷是否同一個字符串對象;equals
:比較存儲在兩個字符串對象中的內容是否一致;
- StringBuffer是線程安全的,而StringBuilder則沒有實現線程安全功能,所以性能更高;
包裝類
基本類型和包裝類之間的對應關系:
- 包裝類提供的兩大類
- 將本類型和其他基本類型進行轉換的方法;
- 將字符串和本類型及包裝類互相裝換的方法;
- 裝箱:把基本類型轉換成包裝類,使其具有對象的性質,又可分為手動裝箱和自動裝箱;
拆箱:把包裝類對象轉換程基本類型的值,分為手動拆箱和自動拆箱;
- 基本類型轉換為字符串的三種方法:
- 使用包裝類的
toString()
方法; - 使用String類的
valueof()
方法; - 用一個空字符串加上基本類型,得到的就是基本數據類型對應的字符串;
- 使用包裝類的
- 將字符串轉換為基本類型的兩種方法:
- 調用包裝類的
parseXxx
靜態方法; - 調用包裝類的
valueOf()
方法轉換為基本類型的包裝類,會自動拆箱;
- 調用包裝類的
時間
- 調用
SimpleDateFormat
對象的parse()
方法時可能會出現轉換異常,即ParseException,因此需要進行異常處理; - 使用Date類時需要導入
java.util
包,使用SimpleDateFormat
時需要導入java.text
包; - 調用
Calendar
獲取月份時,月份是從0
開始的;
Math類
Math
位於java.lang
包中,包含用於執行基本數學運算的方法,類中所有方法懂事靜態方法,可以直接使用類名.方法名()
;
集合框架
- 定義:一種工具類,就像是容器,儲存任意數量的具有共同屬性的對象;
- 作用
- 在類的內部,對數據進行組織;
- 簡單而快速的搜索大數量的條目;
- 有的集合接口,提供一系列排列有序的元素,且可以在序列中間快速插入或者刪除有關元素;
- 有的集合接口,提供映射關系,可以通過關鍵字(key)去快速查找到對應的唯一對象,而這個關鍵字可以是任意類型;
- 數組與集合區別
- 數組長度固定,集合長度可變;
- 數組只能通過下標訪問元素,類型固定,而有的集合可以通過任意類型查找所映射的具體對象;
- Collection接口
- 是List、Set、Queue接口的父接口;
- 定義了可用於操作List、Set、Queue的方法--增刪改查;
- List接口及其實現類--ArrayList
- List是元素有序且可重復的集合,被稱為序列;
- List可以精確控制每個元素的插入位置,或刪除某個位置元素;
- ArrayList--數組序列,是List的一個重要實現類;
- ArrayList底層由數組實現;
- Map接口
- Map提供了一種映射關系,其中的元素是以鍵值對
(key-value)
的形式存儲的,能夠實現根據key快速查找value; - Map中的鍵值對以Entry類型的對象實例形式存在;
- 鍵(key)不可以重復,value可以;
- 每個鍵最多只能映射到一個值;
- Map接口提供了分別返回key值集合、value值集合以及Entry(鍵值對)集合的方法;
- Map支持泛型,形如:Map<K,V>;
- Map提供了一種映射關系,其中的元素是以鍵值對
- HashMap類
- HashMap是Map的一個重要實現類,也是最常用的,基於哈希表實現;
- HashMap中的Entry對象時無序排列的;
- Key值和value值都可以為null,但是一個HashMap只能有一個key值為null的映射(key值不可重復);
JAVA知識點總結篇(三)