国产探花免费观看_亚洲丰满少妇自慰呻吟_97日韩有码在线_资源在线日韩欧美_一区二区精品毛片,辰东完美世界有声小说,欢乐颂第一季,yy玄幻小说排行榜完本

首頁 > 學(xué)院 > 開發(fā)設(shè)計(jì) > 正文

java基礎(chǔ)知識(shí)總結(jié)

2019-11-15 00:54:37
字體:
供稿:網(wǎng)友
java基礎(chǔ)知識(shí)總結(jié)一、 Java數(shù)據(jù)類型1.1 數(shù)據(jù)類型劃分

1.2 基本數(shù)據(jù)類型

1.2.1 基本數(shù)據(jù)類型的默認(rèn)值

1.3 常用的轉(zhuǎn)義字符

1.4 數(shù)據(jù)類型的轉(zhuǎn)換:

(1)自動(dòng)類型轉(zhuǎn)換和強(qiáng)制類型轉(zhuǎn)換。

(2)任何數(shù)據(jù)類型都會(huì)向String轉(zhuǎn)換。

二、 運(yùn)算符、表達(dá)式與語句2.1運(yùn)算符

(1)賦值運(yùn)算符:=

(2)一元運(yùn)算符:+(正號(hào))、-(負(fù)號(hào))、!

(3)算術(shù)運(yùn)算符:+、-、*、/、%

(4)關(guān)系運(yùn)算符:>、<、>=、<=、==、!=

(5)遞增與遞減運(yùn)算符:++、- -

(6)邏輯運(yùn)算符:&、&&、|、||

(7)括號(hào)運(yùn)算符:()

三、 判斷與循環(huán)3.1 程序的結(jié)構(gòu)3.1.1 順序結(jié)構(gòu)

程序從上至下逐行執(zhí)行,一直運(yùn)行到結(jié)尾。

3.1.2 選擇結(jié)構(gòu)

根據(jù)條件的成立與否,決定執(zhí)行哪條語句

(1)if&hellip;else、if…else if…else

(2)switch case語句

(3)三目運(yùn)算符 ?:

3.1.3 循環(huán)結(jié)構(gòu)

循環(huán)就是重復(fù)執(zhí)行某一段代碼

(1) while循環(huán)

(2) do…while循環(huán)

(3) for循環(huán)

3.2 中斷語句

(1)break跳出當(dāng)前循環(huán)。

(2)continue中斷一次循環(huán)執(zhí)行。

四、 數(shù)組的定義及使用4.1 數(shù)組定義

一組相關(guān)變量的集合。

4.2 一維數(shù)組4.2.1 數(shù)組的動(dòng)態(tài)初始化

聲明方式:

(1)數(shù)據(jù)類型 數(shù)組名[] = null

(2)數(shù)據(jù)類型[] 數(shù)組名 = null

開辟數(shù)組空間:

數(shù)組名 = new 數(shù)據(jù)類型[長(zhǎng)度]

4.2.2 數(shù)組的靜態(tài)初始化

數(shù)據(jù)類型 數(shù)組名[] = {初值0,初值1,初值2……初值n}

4.3 二維數(shù)組4.3.1 數(shù)組的動(dòng)態(tài)初始化

聲明方式:

(1)數(shù)據(jù)類型 數(shù)組名[][] = null

(2)數(shù)據(jù)類型[][] 數(shù)組名 = null

開辟數(shù)組空間:

數(shù)組名 = new 數(shù)據(jù)類型[行的個(gè)數(shù)][列的個(gè)數(shù)]

4.3.2 數(shù)組的靜態(tài)初始化

數(shù)據(jù)類型 數(shù)組名[][] = {{第0行初值},{第1行初值}……{第n行初值} }

4.4 多維數(shù)組

以一維數(shù)組、二維數(shù)組類推。

4.5 對(duì)象數(shù)組4.5.1對(duì)象數(shù)組的聲明

類 對(duì)象數(shù)組名稱[]=new 類[數(shù)組長(zhǎng)度];

4.6、數(shù)組的引用傳遞4.6.1接收和返回?cái)?shù)組

一個(gè)方法可以接收一個(gè)數(shù)組,也可以返回一個(gè)數(shù)組,如果方法接收一個(gè)數(shù)組的話,則此方法對(duì)數(shù)組所做的修改將全部被保留下來。

4.6.2數(shù)組中一些方法

(1)數(shù)組排序:Java.util.Arrays.sort();

(2)數(shù)組拷貝:System.arraycopy();

五、 方法聲明及使用5.1 方法的定義

可重復(fù)調(diào)用的代碼段。

5.1.1方法的定義格式

public static 返回值類型 方法名稱(類型 參數(shù)1, 類型 參數(shù)2,…){

方法的主體

程序語句:

[return 表達(dá)式];

}

5.1.2方法的命名規(guī)范

第一個(gè)單詞首字母小寫,之后單詞的首字母大寫。

5.2 方法的重載

方法名字相同,但是參數(shù)類型或者個(gè)數(shù)不同,通過傳遞參數(shù)的類型不同或者個(gè)數(shù)不同進(jìn)行調(diào)用,僅僅只是返回類型不同不能叫重載。

5.3 return語句

(1)返回一個(gè)方法的結(jié)果。

(2)結(jié)束一個(gè)方法。

六、面向?qū)ο笤O(shè)計(jì)6.1 面向?qū)ο蟮娜筇卣?p>(1)封裝

(2)繼承

(3)多態(tài)

6.2 類與對(duì)象

類是對(duì)某一類事物的描述,是抽象的、概念上的定義;對(duì)象是實(shí)際存在的該類事物的每個(gè)個(gè)體,因而也稱實(shí)例。

6.2.1類的定義

class 類名稱{

數(shù)據(jù)類型 屬性;

……

public返回值類型 方法名稱(類型 參數(shù)1, 類型 參數(shù)2,…){

程序語句:

[return 表達(dá)式];

}

}

6.2.2對(duì)象的創(chuàng)建和使用

(1)類名 對(duì)象名稱 = null;

對(duì)象名稱 = new 類名();

(2)類名 對(duì)象名稱 = new 類名();

6.3 Java封裝性與多態(tài)性6.3.1封裝的作用

保護(hù)內(nèi)容,保證某些屬性可以不被外部看見。

6.3.2封裝的實(shí)現(xiàn)

為屬性封裝:PRivate 屬性類型 屬性名稱;

為方法封裝:private 方法返回值 方法名稱(參數(shù)列表){}

6.3.3訪問封裝的內(nèi)容

被封裝的屬性如果需要被訪問,則需要編寫setter和getter方法,setter方法中可以加入驗(yàn)證,getter方法中只是把內(nèi)容簡(jiǎn)單取回。

6.3.4多態(tài)性

多態(tài)性在面向?qū)ο笾惺且粋€(gè)最重要的概要,在java中面向?qū)ο笾饕幸韵聝煞N主要體現(xiàn):

(1) 方法的重載與覆寫

(2) 對(duì)象的多態(tài)性

  1. 向上轉(zhuǎn)型:父類 父類對(duì)象 = 子類實(shí)例;(自動(dòng)完成)
  2. 向下轉(zhuǎn)型:子類 子類對(duì)象 = (子類)父類對(duì)象;(強(qiáng)制)
6.4 構(gòu)造方法與匿名對(duì)象6.4.1構(gòu)造方法

class 類名稱{

訪問權(quán)限 類名稱(類型1 參數(shù)1,類型2,參數(shù)2,…){

程序語句;

…… //構(gòu)造方法沒有返回值

}

注意:

(1) 構(gòu)造方法的名稱必須與類名稱一致。

(2) 構(gòu)造方法的聲明處不能有任何返回值類型的聲明。

(3) 不能在構(gòu)造方法中使用return返回一個(gè)值。

6.4.2構(gòu)造方法重載

重載過程與普通方法一樣:參數(shù)的類型或個(gè)數(shù)不同。

6.4.3匿名對(duì)象

沒有名字,在java中如果只使用一次,則就可以將其定義成匿名對(duì)象。

6.5 this與super關(guān)鍵字6.5.1 this關(guān)鍵字的作用

(1)表示類中的屬性

(2)可以使用this調(diào)用本類的構(gòu)造方法

(3)this表示當(dāng)前對(duì)象

6.5.2 使用this調(diào)用構(gòu)造方法

如果一個(gè)類中有多個(gè)構(gòu)造方法,可以利用this關(guān)鍵字互相調(diào)用。

6.5.3 使用this表示當(dāng)前對(duì)象

當(dāng)前對(duì)象:當(dāng)前正在調(diào)用方法的對(duì)象

6.5.4 super關(guān)鍵字

Super關(guān)鍵字可以從子類訪問父類中的內(nèi)容。

6.5.5 this與super的區(qū)別

6.6 static關(guān)鍵字6.6.1 使用static聲明屬性

static可以聲明全局屬性。

注意:

(1) 使用static聲明的屬性或方法可以直接由類名稱調(diào)用。

(2) 使用static的方法只能訪問static聲明的屬性或方法。

6.6.2 使用static聲明方法

使用static聲明的方法可以直接由類名稱調(diào)用。

6.7 final關(guān)鍵字

(1)final在java中表示的意思是最終,也可稱為完結(jié)器。

(2)可以使用final聲明類、屬性、方法。

(3)使用static final關(guān)鍵字聯(lián)合聲明的變量稱為全局常量。

注意:

a.使用final聲明的類不能有子類;

b.使用final聲明的方法不能被子類覆寫;

c使用final聲明的變量即成為常量,常量不可修改。

6.8 instanceof關(guān)鍵字

(1)在java中可以使用instanceof關(guān)鍵字判斷一個(gè)對(duì)象到底是哪個(gè)類的實(shí)例:

對(duì)象instanceof類 —> 返回boolean類型

(2)在對(duì)象向下轉(zhuǎn)型之前最好使用instanceof關(guān)鍵字進(jìn)行驗(yàn)證。

(3)一個(gè)類最好永遠(yuǎn)不要去繼承一個(gè)已經(jīng)實(shí)現(xiàn)好的類,而只能繼承抽象類或?qū)崿F(xiàn)接口。

6.9 繼承6.9.1 類的繼承格式

在java中使用extends關(guān)鍵字完成類的繼承關(guān)系,操作格式:

class 父類{} //定義父類

class 子類 extends 父類{} //使用extends關(guān)鍵字實(shí)現(xiàn)繼承

6.9.2 繼承的限制

在Java中只允許單繼承,不能使用多重繼承,但允許進(jìn)行多層繼承。

6.9.3 訪問限制

四種訪問權(quán)限:

private、default、public、protected

大小關(guān)系:private<default<protected<public

注意:

子類是不能直接訪問父類中的私有成員的,但子類可以調(diào)用父類中的非私有方法,但是不能直接調(diào)用父類中的私有成員。

6.10方法的重載與覆寫6.10.1 方法覆寫

方法覆寫就是指子類定義了父類中同名的方法,但是在方法覆寫時(shí)必須考慮到權(quán)限。

6.10.2 方法重載

就是在類中可以創(chuàng)建多個(gè)方法,它們具有相同的名字,但具有不同的參數(shù)和不同的定義。調(diào)用方法時(shí)通過傳遞給它們的不同參數(shù)個(gè)數(shù)和參數(shù)類型來決定具體使用哪個(gè)方法, 這就是多態(tài)性。重載的時(shí)候,方法名要一樣,但是參數(shù)類型和個(gè)數(shù)不一樣,返回值類型可以相同也可以不相同。重載(Overloading)是一個(gè)類中多態(tài)性的一種表現(xiàn)。

6.10.3 方法重載與覆寫的區(qū)別

方法的重寫Overriding和重載Overloading是Java多態(tài)性的不同表現(xiàn)。重寫Overriding是父類與子類之間多態(tài)性的一種表現(xiàn),重載Overloading是一個(gè)類中多態(tài)性的一種表現(xiàn)。如果在子類中定義某方法與其父類有相同的名稱和參數(shù),我們說該方法被重寫 (Overriding)。子類的對(duì)象使用這個(gè)方法時(shí)。

如果子類的方法名和參數(shù)類型和個(gè)數(shù)都和父類相同,那么子類的返回值類型必須和父類的相同;如果在一個(gè)類中定義了多個(gè)同名的方法,它們或有不同的參數(shù)個(gè)數(shù)或有不同的參數(shù)類型,則稱為方法的重載。Overloaded的方法是可以改變返回值的類型。也就是說,重載的返回值類型可以相同也可以不同。

6.11抽象類6.11.1概念:

包含一個(gè)抽象方法的類就為抽象類。

抽象方法:只聲明而未實(shí)現(xiàn)的方法稱為抽象方法,抽象方法必須使用abstract關(guān)鍵字聲明。

6.11.2定義格式

Astract class 抽象類名稱{

屬性;

訪問權(quán)限 返回值類型 方法名稱(參數(shù)){

[return返回值];

}

訪問權(quán)限abstract返回值類型 方法名稱(參數(shù));

//在抽象方法中是沒有方法體的

}

6.11.3用法

(1)抽象類使用的時(shí)候一定要有子類,子類仍然使用extends關(guān)鍵字繼承一個(gè)抽象類,同樣會(huì)存在但繼承的關(guān)系。一個(gè)子類不能同時(shí)繼承多個(gè)抽象類。

(2)抽象類中絕對(duì)不能使用final關(guān)鍵字聲明。

(3)抽象類中允許有構(gòu)造方法,而且完全符合子類對(duì)象的實(shí)例化過程。

6.12接口6.12.1概念

接口是java中最重要的概念,接口可以理解為一種特殊的類,里面全部是由全局常量和公共的抽象方法所組成。

6.12.2定義格式

interface接口名稱{

全局常量;

抽象方法;

}

6.12.3實(shí)現(xiàn)接口

與抽象類一樣,接口要使用也必須通過子類,子類通過implements關(guān)鍵字實(shí)現(xiàn)接口。

實(shí)現(xiàn)格式:

Class 子類 implements 接口A, 接口B,…{

}

6.12.4繼承抽象類實(shí)現(xiàn)接口

格式如下:

Class 子類 extends 抽象類 implements 接口A, 接口B,…{}

6.12.5用法

(1)接口是一個(gè)特殊的類,只包含全局常量和抽象方法,接口中的抽象方法可以不加入abstract而抽象類中的抽象方法必須有abstract關(guān)鍵字聲明。

(2)一個(gè)類只能繼承一個(gè)父類,但是可以同時(shí)實(shí)現(xiàn)多個(gè)接口。

(3)一個(gè)接口可以同時(shí)繼承多個(gè)接口,以實(shí)現(xiàn)接口的多繼承。

(4)接口和抽象一樣,都必須依靠子類。

(5)一個(gè)抽象可以實(shí)現(xiàn)多個(gè)接口,但是一個(gè)接口不能繼承一個(gè)抽象類。

6.12.6抽象類與接口的關(guān)系

6.13 java異常處理6.13.1概念

異常是導(dǎo)致程序中斷運(yùn)行的一種指令流,異常是程序運(yùn)行過程出現(xiàn)的錯(cuò)誤,在Java中用類來描述,用對(duì)象來表示具體的異常。

在異常中最大的類是Throwable,分為兩個(gè)子類:Exception、Error

Exception:是程序可以自己處理異常。

Error:表示JVM錯(cuò)誤,一般程序無法處理。

6.13.2 try…catch異常處理

try語句塊,表示要嘗試運(yùn)行代碼,try語句塊中代碼受異常監(jiān)控,其中代碼發(fā)生異常時(shí),會(huì)拋出異常對(duì)象。

catch語句塊會(huì)捕獲try代碼塊中發(fā)生的異常并在其代碼塊中做異常處理,catch語句帶一個(gè)Throwable類型的參數(shù),表示可捕獲異常類型。當(dāng)try中出現(xiàn)異常時(shí),catch會(huì)捕獲到發(fā)生的異常,并和自己的異常類型匹配,若匹配,則執(zhí)行catch塊中代碼,并將catch塊參數(shù)指向所拋的異常對(duì)象。catch語句可以有多個(gè),用來匹配多個(gè)中的一個(gè)異常,一旦匹配上后,就不再嘗試匹配別的catch塊了。

通過異常對(duì)象可以獲取異常發(fā)生時(shí)完整的JVM堆棧信息,以及異常信息和異常發(fā)生的原因等。

finally語句塊是緊跟catch語句后的語句塊,這個(gè)語句塊總是會(huì)在方法返回前執(zhí)行,而不管是否try語句塊是否發(fā)生異常。并且這個(gè)語句塊總是在方法返回前執(zhí)行。

6.13.2常見異常類

七、Java常用類7.1 String類7.1.1 實(shí)例化String對(duì)象

(1)直接賦值

(2)通過關(guān)鍵字new

7.1.2 String內(nèi)容比較

兩種比較方式:

(1) 使用“==”完成,比較的是地址值。

(2) 使用“equals”方法完成,比較的是具體內(nèi)容。

7.1.3 常用方法

(1)將字符串變?yōu)樽址麛?shù)組:toCharArray()

(2)字符數(shù)組變?yōu)樽址篠ring()

(3)字符串中取出指定字符:charAt()

(4)取得字符串長(zhǎng)度:length()

(5)查找指定字符串是否存在:indexOf()

(6)去掉空格:trim()

(7)字符截取:subString()

(8)拆分字符串:split()

(9)大小寫轉(zhuǎn)換:toUppercase()、toLowercase()

(10)判斷是否以指定的字符串開頭或結(jié)尾:startWith()、endsWith()

(11)不區(qū)分大小寫的比較:equalsIgnorecase()

(12)字符串替換:replaceAll()

7.2 StringBuffer類7.2.1定義

StringBuffer是使用緩沖區(qū)的,本身也是操作字符串的,但是與String類不同,String類的內(nèi)容一旦聲明則不可以改變,改變的是其內(nèi)存地址的指向,而StringBuffer中的內(nèi)容是可以改變的。

7.2.2常用方法

(1)連接字符串操作:append()

(2)在任意位置處為StringBuffer添加內(nèi)容:insert()

(3)字符串反轉(zhuǎn)操作:reverse()

(4)替換指定范圍的內(nèi)容:replace()

(5)字符串截取:subString()

(6)字符串刪除:delete()

(7)查找指定的內(nèi)容是否存在:indexOf()

7.3日期操作類7.3.1 Date類

直接輸出其實(shí)例化對(duì)象即可

7.3.2 Calendar類

可以將日期精確到毫秒,按照自己的需要的格式顯示時(shí)間。

calendar.get(Calendar.YEAR));

calendar.get(Calendar.MONTH));

calendar.get(Calendar.DATE));

7.3.3 DateFormat類

是一個(gè)日期的格式化類,專門格式化日期的操作。

(1) 得到日期的DateFormat對(duì)象:DateFormate.getDateInstance()

(2) 得到日期時(shí)間的DateFormat對(duì)象:DateFormate.getDateTimeInstance()

7.3.4 SimpleDateFormate類

是DateFormat類的子類,一般情況下來講DateFormat類很少會(huì)直接使用,而都是使用SimpleDateFormat類完成。

7.4 File類

表示與文件本身有關(guān)的類。

7.4.1常用方法

(1)創(chuàng)建文件:createNewFile()

(2)刪除制定文件:delete()

(3)判斷文件是否存在:exists()

(4)創(chuàng)建文件夾:mkdir()

(5)列出指定目錄的全部文件:list()、listFiles()

(6)判斷一個(gè)給定的路徑是否是目錄:isDirectory()

7.5 List接口

List接口可以存放任意的數(shù)據(jù),而且在List接口中內(nèi)容是允許重復(fù)的,擴(kuò)充了Collection接口的操作。

7.5.1 ArrayList

是List子類,為L(zhǎng)ist接口實(shí)例化。

定義:

List<泛型> 名字=new ArrayList<泛型>();

方法:

(1) 添加:add()

(2) 刪除:remove()

(3) 得到值:get()

(4) 判斷是否為空:isEmpty()

(5) 截取部分集合:subList()

(6) 查找指定的對(duì)象是否存在:indexOf()

(7) 查找是否存在:contains()

7.6 Set接口7.6.1 定義

Set接口也是Collection接口的子類,但與Collection或List接口不同,Set接口中不能加入重復(fù)的元素。

Set<泛型> 名字=new HashSet <泛型>();

Set<泛型> 名字=new TreeSet <泛型>();

7.6.2 常用子類

(1)散列存放:HashSet

(2)有序存放:TreeSet

7.7 Iterator接口7.7.1 簡(jiǎn)介

在使用集合輸出的時(shí)候必修形成以下的思路:‘只要是碰到了集合輸出的操作,就一定使用Iterator接口’。

對(duì)于Iterartor而言,因?yàn)槠浔旧硎且粋€(gè)接口,所以要想實(shí)例化則必須依靠Collection接口完成。

定義:

List<String> all=new ArrayList<String>();

Iterator<String> iter=all.iterator();

Iterator接口的功能是從前向后輸出,屬于單向的輸出,主要功能就是完成迭代輸出操作的。

7.7.2 方法

(1)判斷是否有內(nèi)容:hasNext()

(2)輸出內(nèi)容:next()

(3)刪除當(dāng)前對(duì)象:remove()

7.8 Map接口

在Map中保存的是一對(duì)對(duì)象,對(duì)象的形式是以:key—>value的形式保存的。

7.8.1 Map接口中常用的子類

(1)HashMap:無序存放,key不允許重復(fù)

(2)Hashtable:無序存放,key不允許重復(fù)

(3)TreeMap:可以排序的Map集合,按集合中的key排序,key不允許重復(fù)

(4)WeakHashMap:弱引用的Map集合,當(dāng)集合中的某些內(nèi)容不再使用時(shí),可以清掉無用的數(shù)據(jù),可以使用gc進(jìn)行會(huì)收

(5)IdentityHashMap:key可以重復(fù)的Map集合

7.8.2 Map方法聲明

Map<String,String> map=new HashMap<String,String>();

7.8.2 Map基本方法

(1)增加內(nèi)容:put()

(2)根據(jù)key取出值:get()

(3)判斷指定的key或value是否存在:containsKey()、containsValue()

(4)得到全部的key:keySet()

(5)得到全部的value:values()

7.8.3 HashMap與Hashtable的區(qū)別

7.8.4 TreeMap

使用TreeMap可以方便的完成排序的操作。

7.9 集合工具類:Collections7.9.1 常用方法

(1)空集合的操作:emptyList()、emptySet()

(2)輸入數(shù)據(jù):addAll()

(3)二分檢索:binarySearch()

(4)替換內(nèi)容:repalceAll()

(5)排序:sort()

(6)交換指定內(nèi)容:swap()

7.10 枚舉

所謂枚舉,就是規(guī)定好了指定的取值范圍,所有的內(nèi)容只能從指定的范圍中取得。

7.10.1 定義一個(gè)枚舉類型

[public] enum 枚舉類型名稱{

枚舉對(duì)象1,枚舉對(duì)象2,… ,枚舉對(duì)象n;

}


發(fā)表評(píng)論 共有條評(píng)論
用戶名: 密碼:
驗(yàn)證碼: 匿名發(fā)表
主站蜘蛛池模板: 乃东县| 虎林市| 泽州县| 石河子市| 赞皇县| 浦江县| 济南市| 佛冈县| 朝阳市| 酉阳| 浮梁县| 陆川县| 从化市| 云阳县| 都江堰市| 怀仁县| 潮安县| 清水县| 淮滨县| 红桥区| 万宁市| 义乌市| 宣城市| 明溪县| 五华县| 澄江县| 正宁县| 东乡| 原平市| 漠河县| 突泉县| 都兰县| 江山市| 民和| 尚志市| 蓬溪县| 历史| 抚州市| 灵川县| 保靖县| 屏山县|