日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當(dāng)前位置: 首頁 > 编程资源 > 编程问答 >内容正文

编程问答

java高级知识点_JAVA高级阶段知识点汇总

發(fā)布時(shí)間:2023/12/31 编程问答 24 豆豆
生活随笔 收集整理的這篇文章主要介紹了 java高级知识点_JAVA高级阶段知识点汇总 小編覺得挺不錯(cuò)的,現(xiàn)在分享給大家,幫大家做個(gè)參考.

一、集合框架和泛型

1.定義

集合框架用于存儲一組長度不定的元素。

2.常用的接口和類

接口:Collection、List、Set、Map、Iterator

類:ArrayList、LinkedList、HashSet、HashMap

List接口和Set接口均繼承自Collection接口。

3.使用特點(diǎn)

List:存儲的元素不唯一、有序。

Set:存儲的元素唯一、無序。

Map:元素以鍵值對的方式進(jìn)行存儲。

4.ArrayList和LinkedList的區(qū)別

ArrayList:查找元素速度快,性能高;但是不適合頻繁的對集合元素進(jìn)行插入、修改、刪除。

LinkedList:在頻繁對集合元素進(jìn)行插入、修改、刪除時(shí)效率高,速度快;但是查找速度不如ArrayList。

5.集合常用方法:

List:

add(Object obj)、remove(Object obj)、remove(int index)、size()、get(int index)、iterator()、clear()

Set:

add(Object obj)、remove(Object obj)、size()、iterator()、clear()、沒有g(shù)et方法

Map:

put(Object key, Object value)、get(Object key)、keySet()、values()、size()、remove(Object key) 、clear()

二、實(shí)用類

6.枚舉

定義 : 一組固定的常量。

語法

訪問修飾符?? enum??? 枚舉名{

常量一,

常量二,

… …

}

用法

聲明枚舉變量并賦值:Season? season? =? Season.Spring;

switch:

switch(枚舉變量){

常量一:

… …

Break;

常量二:

… …

Break;

}

7.包裝類

每個(gè)值類型(基本數(shù)據(jù)類型)都存在一個(gè)對應(yīng)的包裝類。

int->Integer、double->Double、boolean->Boolean、char->Charactor、… …

值類型和包裝類的相互轉(zhuǎn)換

拆箱和裝箱

裝箱:將值類型轉(zhuǎn)換為引用類型。

拆箱:將引用類型轉(zhuǎn)換為值類型。

8.Math類

Math類的作用

提供一系列與科學(xué)計(jì)算相關(guān)的方法。

常用方法:random()、floor()、ceiling()、max()、min()、round()

9.String類

常用的方法:substring()、indexOf()、lastIndexOf()、replace()、split()、length()

10.Random類

作用 : 生成隨機(jī)數(shù)。

常用方法:nextInt()、nextInt(int)、nextDouble()、nextXXX()

11.日期時(shí)間類

Date

Calendar

SimpleDateFormat

12.StringBuilder(StringBuffer)和String的區(qū)別?

String 在進(jìn)行運(yùn)算時(shí)(如賦值、拼接等)會產(chǎn)生一個(gè)新的實(shí)例,而 StringBuilder?則不會。所以在大量字符串拼接或頻繁對某一字符串進(jìn)行操作時(shí)最好使用 StringBuilder(StringBuffer),不要使用 String。

三、輸入輸出IO

IO操作相關(guān)的包:java.io

13.File類

功能:實(shí)現(xiàn)對文件和目錄的常規(guī)操作。

常用的方法:

方法名

作用

exits()

判斷文件或目錄是否存在

14.流的分類

根據(jù)方向分類:

輸入:InputStream、Reader

輸出:OutputStream、Writer

根據(jù)流操作的數(shù)據(jù)單位分類:

字節(jié)流:InputStream、OutputStream

字符流:Reader、Writer

實(shí)現(xiàn)類

(抽)InputStream

(抽)OutputStream

(抽)Reader

(抽)Writer

FileInputStream

FileOutputStream

InputStreamReader

OutputStreamWriter

DataInputStream

DataOutputStream

FileReader

FileWriter

ObjectInputStream

ObjectOutputStream

BufferedReader

BufferedWriter

序列化和反序列化

序列化是指將內(nèi)存中對象的狀態(tài)轉(zhuǎn)換為可以存儲或傳輸?shù)母袷降倪^程。

四、多線程

15.進(jìn)程和線程的區(qū)別

計(jì)算機(jī)中一個(gè)正在運(yùn)行的可執(zhí)行程序的實(shí)例就是進(jìn)程。一個(gè)進(jìn)程可以包含多個(gè)線程。單個(gè)線程用于完成一個(gè)任務(wù),而同時(shí)創(chuàng)建多個(gè)線程來完成多項(xiàng)任務(wù),便是多線程。

二者都定義了某種邊界,不同的是進(jìn)程定義的是應(yīng)用程序與應(yīng)用程序之間的邊界,不同的進(jìn)程之間不能共享代碼和數(shù)據(jù)空間,而線程定義的是代碼執(zhí)行堆棧和執(zhí)行上下文的邊界。

用一個(gè)比喻來說,如果一個(gè)家庭代表一個(gè)進(jìn)程,在家庭內(nèi)部,各個(gè)成員就是線程,家庭中的每個(gè)成員都有義務(wù)對家庭的財(cái)富進(jìn)行積累,同時(shí)也有權(quán)利對家庭財(cái)富進(jìn)行消費(fèi),當(dāng)面對一個(gè)任務(wù)的時(shí)候,家庭也可以派出幾個(gè)成員來協(xié)同完成,而家庭之外的人則沒有辦法直接消費(fèi)不屬于自己家庭的財(cái)產(chǎn)。

16.Java中使用線程的步驟17.Java中定義線程的2種方式

18.線程的優(yōu)先級

19.線程的生命周期

20.線程的同步

21.線程常用方法

五、網(wǎng)絡(luò)編程

22.什么是TCP和UDP,他們的差異是什么?

TCP(Transmission Control Protocol,傳輸控制協(xié)議)是基于連接的協(xié)議,也就是說,在正式收發(fā)數(shù)據(jù)前,必須和對方建立可靠的連接(信任連接)。

UDP(User Data Protocol,用戶數(shù)據(jù)報(bào)協(xié)議)是與TCP相對應(yīng)的協(xié)議。它是面向非連接的協(xié)議,它不與對方建立連接,而是直接就把數(shù)據(jù)包發(fā)送過去!

UDP適用于一次傳送少量數(shù)據(jù)、對可靠性要求不高的應(yīng)用環(huán)境,但是傳輸速度快。

TCP適用于一次傳送大量數(shù)據(jù)、對可靠性要求較高的環(huán)境,數(shù)據(jù)傳輸速度慢。

六、XML操作

23.XML基本概念

XML即可擴(kuò)展標(biāo)記語言。一般用來存儲數(shù)據(jù)和在網(wǎng)絡(luò)間傳輸數(shù)據(jù)。

XML很像超文本標(biāo)記語言(HTML);但它又未規(guī)定固有的標(biāo)記有哪些。

XML使用規(guī)范大致包括:

每個(gè)XML文件的第一行為XML聲明,定義了XML版本和編碼等信息。

一個(gè)XML文檔有且僅有一個(gè)根節(jié)點(diǎn)。

XML對大小寫敏感,區(qū)分大小寫。

每個(gè)XML標(biāo)記必須包含開始標(biāo)記和結(jié)束標(biāo)記。

XML的標(biāo)記必須正確的潛逃。

24.XML與HTML的主要區(qū)別

XML用于存儲和傳輸數(shù)據(jù),而HTML則用于顯示數(shù)據(jù)。

XML區(qū)分大小寫字母,而HTML不區(qū)分。

HTML的開始標(biāo)記可以沒有對應(yīng)的結(jié)束標(biāo)記,而XML的開始標(biāo)記必須要有結(jié)束標(biāo)記相對應(yīng)。

在XML中,屬性值必須分裝在引號中。在HTML中,引號是可用可不用的。

在HTML中可以有不帶值的屬性名。但是在XML中,所有的屬性都必須帶有相應(yīng)的值。

XML中的標(biāo)記可由用戶自定義,而HTML則約定了可以使用哪些標(biāo)記。

25.JAVA中操作XML有哪些技術(shù)

DOM方式

DOM 是 W3C 處理 XML 的標(biāo)準(zhǔn) API,它是許多其它與 XML 處理相關(guān)的標(biāo)準(zhǔn)的基礎(chǔ)。它根據(jù)XML文檔中節(jié)點(diǎn)間的關(guān)系進(jìn)行操作,最大的問題就是需要將整個(gè)XML文檔一次性加載到內(nèi)存中。

SAX

SAX 從根本上解決了 DOM 在解析 XML 文檔時(shí)產(chǎn)生的占用大量資源的問題。其實(shí)現(xiàn)是通過類似于流解析的技術(shù),通讀整個(gè) XML 文檔樹,通過事件處理器來響應(yīng)程序員對于 XML 數(shù)據(jù)解析的需求。

Dom4j

Dom4j是一個(gè)易用的、開源的庫,用于XML,XPath和XSLT。它應(yīng)用于Java平臺,采用Java集合框架實(shí)現(xiàn),并完全支持DOM,SAX和JAXP。

26.什么是xpath

XPath即為XML路徑語言(XML Path Language),它是一種用來確定XML文檔中某部分位置的語言。XPath基于XML的樹狀結(jié)構(gòu),提供在數(shù)據(jù)結(jié)構(gòu)樹中找尋節(jié)點(diǎn)的能力。

表達(dá)式

說明

示例

nodename

選取此節(jié)點(diǎn)的所有子節(jié)點(diǎn)

bookstore()

/

從根節(jié)點(diǎn)選取

/bookstore(選取根元素bookstore)

//

從匹配的當(dāng)前節(jié)點(diǎn)選擇節(jié)點(diǎn),不考慮位置

//book選取所有book子元素,不管其位置

.

選取當(dāng)前節(jié)點(diǎn)

..

選取當(dāng)前節(jié)點(diǎn)的父節(jié)點(diǎn)

@

選取屬性

//@lang選取名為lang的所有屬性

總結(jié)

以上是生活随笔為你收集整理的java高级知识点_JAVA高级阶段知识点汇总的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網(wǎng)站內(nèi)容還不錯(cuò),歡迎將生活随笔推薦給好友。