版權說明:本文檔由用戶提供并上傳,收益歸屬內容提供方,若內容存在侵權,請進行舉報或認領
文檔簡介
java面試基礎知識總結
寫代碼:
1,明確需求。我要做什么?
2,分析思路。我要怎么做?1,2,3。
3,確定步驟。每一個思路部分用到哪些語句,方法,
和對象。
4,代碼實現。用具體的java語言代碼把思路體現出
來。
學習新技術的四點:
1,該技術是什么?
2,該技術有什么特點(使用注意):
3,該技術怎么使用。demo
4,該技術什么時候用?testo
java概述:
1991年Sun公司的JamesGosling等人開始開發(fā)名
稱為Oak的語言,希望用于控制嵌入在有線電視交換盒、
PDA等的微處理器;
1994年將Oak語言更名為Java;
Java的三種技術架構:
JAVAEE:JavaPlatformEnterpriseEdition,開發(fā)
企業(yè)環(huán)境下的應用程序,主要針對web程序開發(fā);JAVASE:
JavaPlatformStandardEdition,完成桌面應用程序的開
發(fā),是其它兩者的基礎;JAVAME:JavaPlatformMicro
Edition,開發(fā)電子消費產品和嵌入式設備,如手機中的程
序;
1,JDK:JavaDevelopmentKit,java的開發(fā)和運行
環(huán)境,java的開發(fā)工具和jreo
2,JRE:JavaRuntimeEnvironment,java程序的運
行環(huán)境,java運行的所需的類庫+JVM(java虛擬機)。3,
配置環(huán)境變量:讓javajdkDin目錄下的工具,可以在任
意目錄下運行,原因是,將該工具所在目錄告訴了系統(tǒng),當
使用該工具時,由系統(tǒng)幫我們去找指定的目錄。
環(huán)境變量的配置:
1):永久配置方式:JAVA_H0ME=%安裝路徑%Javajdk
path-%JAVAH0ME%Din2):臨時配置方式:set
path=%path%;C:ProgramFilesJavajdkDin
特點:系統(tǒng)默認先去當前路徑下找要執(zhí)行的程序,如
果沒有,再去path中設置的路徑下找。classpath的配置:
1):永久配置方式:classpath=.;c:;e:
2):臨時配置方式:setclasspath=.;c:;e:
注意:在定義classpath環(huán)境變量時,需要注意的情
況
如果沒有定義環(huán)境變量classpath,java啟動jvm后,
會在當前目錄下查找要運行的類文件;如果指定了
classpath,那么會在指定的目錄下查找要運行的類文件。
還會在當前目錄找嗎?兩種情況:
1):如果classpath的值結尾處有分號,在具體路徑
中沒有找到運行的類,會默認在當前目錄再找一次。
2):如果classpath的值結果出沒有分號,在具體的
路徑中沒有找到運行的類,不會再當前目錄找。一般不指
定分號,如果沒有在指定目錄下找到要運行的類文件,就報
錯,這樣可以調試程序。
4,javac命令和java命令做什么事情呢?
要知道java是分兩部分的:一個是編譯,一個是運
行。
javac:負責的是編譯的部分,當執(zhí)行javac時,會
啟動java的編譯器程序。對指定擴展名的.java文件進行編
譯。生成了jvm可以識別的字節(jié)碼文件。也就是class文
件,也就是java的運行程序。
java:負責運行的部分.會啟動jvm.加載運行時所需
的類庫,并對class文件進行執(zhí)行.
一個文件要被執(zhí)行,必須要有一個執(zhí)行的起始點,這
個起始點就是main函數.
---------------------------------------------二:java
語法基礎:
1,關鍵字:其實就是某種語言賦予了特殊含義的單
詞。
保留字:其實就是還沒有賦予特殊含義,但是準備日
后要使用過的單詞。
2,標示符:其實就是在程序中自定義的名詞。比如
類名,變量名,函數名。包含0-9、a-z.$、_;注意:
1),數字不可以開頭。2),不可以使用關鍵字。
3,常量:是在程序中的不會變化的數據。
4,變量:其實就是內存中的一個存儲空間,用于存
儲常量數據。
作用:方便于運算。因為有些數據不確定。所以確定
該數據的名詞和存儲空間。
特點:變量空間可以重復使用。
什么時候定義變量?只要是數據不確定的時候,就定
義變量。
變量空間的開辟需要什么要素呢?
1,這個空間要存儲什么數據?數據類型。
2,這個空間叫什么名字???變量名稱。
3,這個空間的第一次的數據是什么?變量的初始化
值。
變量的作用域和生存期:
變量的作用域:
作用域從變量定義的位置開始,到該變量所在的那對
大括號結束;
生命周期:
變量從定義的位置開始就在內存中活了;
變量到達它所在的作用域的時候就在內存中消失了;
數據類型:
1):基本數據類型:byte、short、int、long、float、
double、char、boolean
2):引用數據類型:數組、類、接口。
級別從低到高為:byte,char,short(這三個平
級)一>int-->float->long->double
自動類型轉換:從低級別到高級別,系統(tǒng)自動轉的;
強制類型轉換:什么情況下使用?把一個高級別的數
賦給一個別該數的級別低的變量;
運算符號:
1)、算術運算符。
+-*/%%任何整數模2不是0就是1,所以只要
改變被模數就可以實現開關運算。
+:連接符。
++,一
2)、賦值case值:要執(zhí)行的語句;break;
?
default:要執(zhí)行的語句;
}
工作原理:用小括號中的變量的值依次和case后面
的值進行對比,和哪個case后面的值相同了
就執(zhí)行哪個case后面的語句,如果沒有相同的則執(zhí)
行default后面的語句;
細節(jié):1):break是可以省略的,如果省略了就一直
執(zhí)彳亍到遇到break為止;
2):switch后面的小括號中的變量應該是
byte,char,short,int四種類型中的一種;
3):default可以寫在switch結構中的任意位置;如
果將default語句放在了第一行,則不管expression與case
中的value是否匹配,程序會從default開始執(zhí)行直到第一
個break出現。
2)、當判斷數據范圍,獲取判斷運算結果boolean類
型時,需要使用if。
3)、當某些語句需要執(zhí)行很多次時,就用循環(huán)結構。
while和for可以進行互換。區(qū)別在于:如果需要定
義變量控制循環(huán)次數。建議使用for。因為for循環(huán)完畢,
變量在內存中釋放。
break:作用于switch,和循環(huán)語句,用于跳出,或
者稱為結束。
break語句單獨存在時,下面不要定義其他語句,因
為執(zhí)行不到,編譯會失敗。當循環(huán)嵌套時,break只跳出當
前所在循環(huán)。要跳出嵌套中的外部循環(huán),只要給循環(huán)起名字
即可,這個名字稱之為標號。
continue:只作用于循環(huán)結構,繼續(xù)循環(huán)用的。
作用:結束本次循環(huán),繼續(xù)下次循環(huán)。該語句單獨存
在時,下面不可以定義語句,執(zhí)行不到。
6,函數:為了提高代碼的復用性,可以將其定義成
一個單獨的功能,該功能的體現就是java中的函數。函數
就是體現之一。
java中的函數的定義格式:
修飾符返回值類型函數名(參數類型形式參數1,
參數類型形式參數1,?){)執(zhí)行語句;return返回值;
當函數沒有具體的返回值時,返回的返回值類型用
void關鍵字表示。
如果函數的返回值類型是void時,return語句可以
省略不寫的,系統(tǒng)會幫你自動加上。
return的作用:結束函數。結束功能。
如何定義一個函數?
函數其實就是一個功能,定義函數就是實現功能,通
過兩個明確來完成:1)、明確該功能的運算完的結果,其
實是在明確這個函數的返回值類型。
2)、在實現該功能的過程中是否有未知內容參與了運
算,其實就是在明確這個函數的參數列表(參數類型&參數個
數)。
函數的作用:
1)、用于定義功能。
2)、用于封裝代碼提高代碼的復用性。
注意:函數中只能調用函數,不能定義函數。
主函數:
1)、保證該類的獨立運行。2)、因為它是程序的入
口。3)、因為它在被jvm調用。
函數定義名稱是為什么呢?
答:1)、為了對該功能進行標示,方便于調用。
2)、為了通過名稱就可以明確函數的功能,為了增加
代碼的閱讀性。
重載的定義是:在一個類中,如果出現了兩個或者兩
個以上的同名函數,只要它們的參數的個數,或者參數的類
型不同,即可稱之為該函數重載了。
如何區(qū)分重載:當函數同名時,只看參數列表。和返
回值類型沒關系。
7,數組:用于存儲同一類型數據的一個容器。好處:
可以對該容器中的數據進行編號,從0開始。數組用于封裝
數據,就是一個具體的實體。
如何在java中表現一個數組呢?兩種表現形式。
1)、元素類型變量名=new元素類型;
2)、元素類型變量名={元素1,元素2...};
元素類型變量名=new元素類型{元素1,元素
2...};
〃二分查找法。必須有前提:數組中的元素要有序。
publicstaticinthalfSeach2(intarr,int
key){intmin,max,mid;min=0;max=;mid=
(max+min)?1;//(max+min)/2;
while(arr!=key){if(key>arr){}min=mid+1;else
if(keyl;
returnmid;
java分了5片內存。
1:寄存器。2:本地方法區(qū)。3:方法區(qū)。4:棧。5:
堆。
棧:存儲的都是局部變量(函數中定義的變量,函
數上的參數,語句中的變量);
只要數據運算完成所在的區(qū)域結束,該數據就會被釋
放。
堆:用于存儲數組和對象,也就是實體。啥是實體???
就是用于封裝多個數據的。
1:每一個實體都有內存首地址值。
2:堆內存中的變量都有默認初始化值。因為數據類
型不同,值也不一樣。
3:垃圾回收機制。
三:面向對象:★★★★★
特點:
1:將復雜的事情簡單化。
2:面向對象將以前的過程中的執(zhí)行者,變成了指揮
者。
3:面向對象這種思想是符合現在人們思考習慣的一
種思想。
過程和對象在我們的程序中是如何體現的呢?過程
其實就是函數;對象是將函數等一些內容進行了封裝。
匿名對象使用場景:
1:當對方法只進行一次調用的時候,可以使用匿名
對象。
2:當對象對成員進行多次調用時,不能使用匿名對
象。必須給對象起名字。
在類中定義其實都稱之為成員。成員有兩種:
1:成員變量:其實對應的就是事物的屬性。
2:成員函數:其實對應的就是事物的行為。
所以,其實定義類,就是在定義成員變量和成員函數。
但是在定義前,必須先要對事物進行屬性和行為的分析,才
可以用代碼來體現。
寫代碼:
1,明確需求。我要做什么?
2,分析思路。我要怎么做?1,2,3。
3,確定步驟。每一個思路部分用到哪些語句,方法,
和對象。
4,代碼實現。用具體的java語言代碼把思路體現出
來。
學習新技術的四點:
1,該技術是什么?
2,該技術有什么特點(使用注意):
3,該技術怎么使用。demo
4,該技術什么時候用?testo
java概述:
1991年Sun公司的JamesGosling等人開始開發(fā)名
稱為Oak的語言,希望用于控制嵌入在有線電視交換盒、
PDA等的微處理器;
1994年將Oak語言更名為Java;
Java的三種技術架構:
JAVAEE:JavaPlatformEnterpriseEdition,開發(fā)
企業(yè)環(huán)境下的應用程序,主要針對web程序開發(fā);
JAVASE:JavaPlatformStandardEdition,完成桌
面應用程序的開發(fā),是其它兩者的基礎;
JAVAME:JavaPlatformMicroEdition,開發(fā)電子
消費產品和嵌入式設備,如手機中的程序;
1,JDK:JavaDevelopmentKit,java的開發(fā)和運行
環(huán)境,java的開發(fā)工具和jreo
2,JRE:JavaRuntimeEnvironment,java程序的運
行環(huán)境,java運行的所需的類庫+JVM(java虛擬機)。3,
配置環(huán)境變量:讓javajdkDin目錄下的工具,可以在任
意目錄下運行,原因是,將該工具所在目錄告訴了系統(tǒng),當
使用該工具時,由系統(tǒng)幫我們去找指定的目錄。
環(huán)境變量的配置:
1):永久配置方式:JAVAJ0ME=%安裝路徑%Javajdk
path=%JAVA?HOME%Din
2):臨時配置方式:setpath=%path%;C:Program
FilesJavajdkDin
特點:系統(tǒng)默認先去當前路徑下找要執(zhí)行的程序,如
果沒有,再去path中設置的路徑下找。
classpath的配置:
1):永久配置方式:classpath=.;c:;e:
2):臨時配置方式:setclasspath=.;c:;e:
注意:在定義classpath環(huán)境變量時,需要注意的情
況
如果沒有定義環(huán)境變量classpath,java啟動jvm后,
會在當前目錄下查找要運行的類文件;
如果指定了classpath,那么會在指定的目錄下查找
要運行的類文件。
還會在當前目錄找嗎?兩種情況:
1):如果classpath的值結尾處有分號,在具體路徑
中沒有找到運行的類,會默認在當前目錄再找一次。
2):如果classpath的值結果出沒有分號,在具體的
路徑中沒有找到運行的類,不會再當前目錄找。一般不指
定分號,如果沒有在指定目錄下找到要運行的類文件,就報
錯,這樣可以調試程序。
4,javac命令和java命令做什么事情呢?
要知道java是分兩部分的:一個是編譯,一個是運
行。
javac:負責的是編譯的部分,當執(zhí)行javac時,會
啟動java的編譯器程序。對指定擴展名的.java文件進行編
譯。生成了jvm可以識別的字節(jié)碼文件。也就是class文
件,也就是java的運行程序。
java:負責運行的部分.會啟動jvm.加載運行時所需
的類庫,并對class文件進行執(zhí)行.
一個文件要被執(zhí)行,必須要有一個執(zhí)行的起始點,這
個起始點就是main函數.
二:java
語法基礎:
1,關鍵字:其實就是某種語言賦予了特殊含義的單
詞。
保留字:其實就是還沒有賦予特殊含義,但是準備日
后要使用過的單詞。
2,標示符:Java中的包、類、方法、參數和變量的
名字,可由任意順序的大小寫字母、數字、下劃線和美元符
號組成,但標識符不能以數字開頭,不能是Java中的保留
關鍵字。
?下面是合法的標識符:
yourname
your_name
_yourname
$yourname
?下面是非法的標識符:
class
HelloCareers
1),數字不可以開頭。
2),不可以使用關鍵字。
3,常量:是在程序中的不會變化的數據。
4,變量:其實就是內存中的一個存儲空間,用于存
儲常量數據。
作用:方便于運算。因為有些數據不確定。所以確定
該數據的名詞和存儲空間。
特點:變量空間可以重復使用。
什么時候定義變量?只要是數據不確定的時候,就定
義變量。
變量空間的開辟需要什么要素呢?
1,這個空間要存儲什么數據?數據類型。
2,這個空間叫什么名字?。孔兞棵Q。
3,這個空間的第一次的數據是什么?變量的初始化
值。
變量的作用域和生存期:
變量的作用域:
作用域從變量定義的位置開始,到該變量所在的那對
大括號結束;
生命周期:
變量從定義的位置開始就在內存中活了;
變量到達它所在的作用域的時候就在內存中消失了;
數據類型:
1):基本數據類型:byte、short、int、long、float、
double^char、boolean2):引用數據類型:數組、類、接
口O
級別從低到高為:byte,char,short(這三個平
級)-->int-->float-->long-->double
自動類型轉換:從低級別到高級別,系統(tǒng)自動轉的;
強制類型轉換:什么情況下使用?把一個高級別的數
賦給一個別該數的級別低的變量;
運算符號:
1)、算術運算符。
+-*/%%:任何整數模2不是0就是1,所以只要
改變被模數就可以實現開關運算。二b;
練習:高效的算出2*8=25,語句。
Ifswitchdowhilewhilefor
這些語句什么時候用?
1)、當判斷固定個數的值的時候,可以使用if,也可
以使用switcho建議使用switch,效率相對較高。
switch(變量){
case值:要執(zhí)行的語句;break;
?
default:要執(zhí)行的語句;
}
工作原理:用小括號中的變量的值依次和case后面
的值進行對比,和哪個case后面的值相同了
就執(zhí)行哪個case后面的語句,如果沒有相同的則執(zhí)
行default后面的語句;
細節(jié):1):break是可以省略的,如果省略了就一直
執(zhí)行到遇到break為止;
2):switch后面的小括號中的變量應該是
byte,char,short,int四種類型中的一種;
3):default可以寫在switch結構中的任意位置;如
果將default語句放在了第一行,則不管expression與case
中的value是否匹配,程序會從default開始執(zhí)行直到第一
個break出現。
2)、當判斷數據范圍,獲取判斷運算結果boolean類
型時,需要使用if。
3)、當某些語句需要執(zhí)行很多次時,就用循環(huán)結構。
while和for可以進行互換。
區(qū)別在于:如果需要定義變量控制循環(huán)次數。建議使
用for。因為for循環(huán)完畢,變量在內存中釋放。
break:作用于switch,和循環(huán)語句,用于跳出,或
者稱為結束。
break語句單獨存在時,下面不要定義其他語句,因
為執(zhí)行不到,編譯會失敗。當循環(huán)嵌套時,break只跳出當
前所在循環(huán)。要跳出嵌套中的外部循環(huán),只要給循環(huán)起名字
即可,這個名字稱之為標號。
continue:只作用于循環(huán)結構,繼續(xù)循環(huán)用的。
作用:結束本次循環(huán),繼續(xù)下次循環(huán)。該語句單獨存
在時,下面不可以定義語句,執(zhí)行不到。
6,函數:為了提高代碼的復用性,可以將其定義成
一個單獨的功能,該功能的體現就是java中的函數。函數
就是體現之一。
java中的函數的定義格式:
修飾符返回值類型函數名(參數類型形式參數1,
參數類型形式參數1,?){
執(zhí)行語句;
return返回值;
}
當函數沒有具體的返回值時,返回的返回值類型用
void關鍵字表示。
如果函數的返回值類型是void時,return語句可以
省略不寫的,系統(tǒng)會幫你自動加上。
return的作用:結束函數。結束功能。
如何定義一個函數?
函數其實就是一個功能,定義函數就是實現功能,通
過兩個明確來完成:
1)、明確該功能的運算完的結果,其實是在明確這個
函數的返回值類型。
2)、在實現該功能的過程中是否有未知內容參與了運
算,其實就是在明確這個函數的參數列表(參數類型&參數個
數)。
函數的作用:
1)、用于定義功能。
2)、用于封裝代碼提高代碼的復用性。
注意:函數中只能調用函數,不能定義函數。
主函數:
1)、保證該類的獨立運行。
2)、因為它是程序的入口。
3)、因為它在被jvm調用。
函數定義名稱是為什么呢?
答:1)、為了對該功能進行標示,方便于調用。
2)、為了通過名稱就可以明確函數的功能,為了增加
代碼的閱讀性。
重載的定義是:在一個類中,如果出現了兩個或者兩
個以上的同名函數,只要它們的參數的個數,或者參數的類
型不同,即可稱之為該函數重載了。
如何區(qū)分重載:當函數同名時,只看參數列表。和返
回值類型沒關系。
7,一維數組:用于存儲同一類型數據的一個容器。
好處:可以對該容器中的數據進行編號,從0開始。數組用
于封裝數據,就是一個具體的實體。
如何在java中表現一個數組呢?兩種表現形式。
1)、元素類型變量名=new元素類型;
2)、元素類型變量名={元素1,元素2...};
3)、(source,0,dest,0,x):語句的意思就是:復制
源數組從下標0開始的x個元素到目標數組,從目標數組的
下標0所對應的位置開始存取。
4)、(數組名)為數組排序的操作,但這個方法在這個
包里面,所以在用到的時候需要先將它導入
〃二分查找法。必須有前提:數組中的元素要有序。
Java基礎知識總結
寫代碼:
1,明確需求。我要做什么?
2,分析思路。我要怎么做?1,2,3。
3,確定步驟。每一個思路部分用到哪些語句,方法,
和對象。
4,代碼實現。用具體的java語言代碼把思路體現出
來。
學習新技術的四點:
1,該技術是什么?
2,該技術有什么特點(使用注意):
3,該技術怎么使用。demo
4,該技術什么時候用?testo
java概述:
1991年Sun公司的JamesGosling等人開始開發(fā)名
稱為Oak的語言,希望用于控制嵌入在有線電視交換盒、
PDA等的微處理器;
1994年將Oak語言更名為Java;
Java的三種技術架構:
JAVAEE:JavaPlatformEnterpriseEdition,開發(fā)
企業(yè)環(huán)境下的應用程序,主要針對web程序開發(fā);
JAVASE:JavaPlatformStandardEdition,完成桌
面應用程序的開發(fā),是其它兩者的基礎;
JAVAME:JavaPlatformMicroEdition,開發(fā)電子
消費產品和嵌入式設備,如手機中的程序;
1,JDK:JavaDevelopmentKit,java的開發(fā)和運行
環(huán)境,java的開發(fā)工具和jreo
2,JRE:JavaRuntimeEnvironment,java程序的運
行環(huán)境,java運行的所需的類庫+JVM(java虛擬機)。3,
配置環(huán)境變量:讓javajdkDin目錄下的工具,可以在任
意目錄下運行,原因是,將該工具所在目錄告訴了系統(tǒng),當
使用該工具時,由系統(tǒng)幫我們去找指定的目錄。
環(huán)境變量的配置:
1):永久配置方式:JAVA.HOME=%安裝路
path-%JAVA_HOME%Din
2):臨時配置方式:setpath=%path%;C:Program
FilesJavajdkDin
特點:系統(tǒng)默認先去當前路徑下找要執(zhí)行的程序,如
果沒有,再去path中設置的路徑下找。
classpath的配置:
1):永久配置方式:classpath=.;c:;e:
2):臨時配置方式:setclasspath=.;c:;e:
注意:在定義classpath環(huán)境變量時,需要注意的情
況
如果沒有定義環(huán)境變量classpath,java啟動jvm后,
會在當前目錄下查找要運行的類文件;
如果指定了classpath,那么會在指定的目錄下查找
要運行的類文件。
還會在當前目錄找嗎?兩種情況:
1):如果classpath的值結尾處有分號,在具體路徑
中沒有找到運行的類,會默認在當前目錄再找一次。
2):如果classpath的值結果出沒有分號,在具體的
路徑中沒有找到運行的類,不會再當前目錄找。一般不指
定分號,如果沒有在指定目錄下找到要運行的類文件,就報
錯,這樣可以調試程序。
4,javac命令和java命令做什么事情呢?
要知道java是分兩部分的:一個是編譯,一個是運
行。
javac:負責的是編譯的部分,當執(zhí)行javac時,會
啟動java的編譯器程序。對指定擴展名的.java文件進行編
譯。生成了jvm可以識別的字節(jié)碼文件。也就是class文
件,也就是java的運行程序。
java:負責運行的部分.會啟動jvm.加載運行時所需
的類庫,并對class文件進行執(zhí)行.
一個文件要被執(zhí)行,必須要有一個執(zhí)行的起始點,這
個起始點就是main函數.
---------------------------------------------二:java
語法基礎:
1,關鍵字:其實就是某種語言賦予了特殊含義的單
詞。
保留字:其實就是還沒有賦予特殊含義,但是準備日
后要使用過的單詞。
2,標示符:其實就是在程序中自定義的名詞。比如
類名,變量名,函數名。包含0-9>a-z、$、_;注意:
1),數字不可以開頭。
2),不可以使用關鍵字。
3,常量:是在程序中的不會變化的數據。
4,變量:其實就是內存中的一個存儲空間,用于存
儲常量數據。
作用:方便于運算。因為有些數據不確定。所以確定
該數據的名詞和存儲空間。
特點:變量空間可以重復使用。
什么時候定義變量?只要是數據不確定的時候,就定
義變量。
變量空間的開辟需要什么要素呢?
1,這個空間要存儲什么數據?數據類型。
2,這個空間叫什么名字???變量名稱。
3,這個空間的第一次的數據是什么?變量的初始化
值。
變量的作用域和生存期:
變量的作用域:
作用域從變量定義的位置開始,到該變量所在的那對
大括號結束;
生命周期:
變量從定義的位置開始就在內存中活了;
變量到達它所在的作用域的時候就在內存中消失了;
數據類型:
1):基本數據類型:byte、short、int、long、float、
double、char、boolean
2):引用數據類型:數組、類、接口。
級別從低到高為:byte,char,short(這三個平
級)一>int->float->long->double
自動類型轉換:從低級別到高級別,系統(tǒng)自動轉的;
強制類型轉換:什么情況下使用?把一個高級別的數
賦給一個別該數的級別低的變量;
運算符號:
1)、算術運算符。
+-*/%%:任何整數模2不是0就是1,所以只要
改變被模數就可以實現開關運算。
+:連接符。
++,一
2)、賦值運算符。
二+=一=*=/-%=
3)、比較運算符。
特點:該運算符的特點是:運算完的結果,要么是
true,要么是false。
4)、邏輯運算符。但是建議使用switch,效率相對較
高。
switch(變量){
case值:要執(zhí)行的語句;break;
?
default:要執(zhí)行的語句;
}
工作原理:用小括號中的變量的值依次和case后面
的值進行對比,和哪個case后面的值相同了
就執(zhí)行哪個case后面的語句,如果沒有相同的則執(zhí)
行default后面的語句;
細節(jié):1):break是可以省略的,如果省略了就一直
執(zhí)彳亍到遇到break為止;
2):switch后面的小括號中的變量應該是
byte,char,short,int四種類型中的一種;
3):default可以寫在switch結構中的任意位置;如
果將default語句放在了第一行,則不管expression與case
中的value是否匹配,程序會從default開始執(zhí)行直到第一
個break出現。
2)、當判斷數據范圍,獲取判斷運算結果boolean類
型時,需要使用if。
3)、當某些語句需要執(zhí)行很多次時,就用循環(huán)結構。
while和for可以進行互換。
區(qū)別在于:如果需要定義變量控制循環(huán)次數。建議使
用for。因為for循環(huán)完畢,變量在內存中釋放。
break:作用于switch,和循環(huán)語句,用于跳出,或
者稱為結束。
break語句單獨存在時,下面不要定義其他語句,因
為執(zhí)行不到,編譯會失敗。當循環(huán)嵌套時,break只跳出當
前所在循環(huán)。要跳出嵌套中的外部循環(huán),只要給循環(huán)起名字
即可,這個名字稱之為標號。
continue:只作用于循環(huán)結構,繼續(xù)循環(huán)用的。
作用:結束本次循環(huán),繼續(xù)下次循環(huán)。該語句單獨存
在時,下面不可以定義語句,執(zhí)行不到。
6,函數:為了提高代碼的復用性,可以將其定義成
一個單獨的功能,該功能的體現就是java中的函數。函數
就是體現之一。
java中的函數的定義格式:
修飾符返回值類型函數名(參數類型形式參數1,
參數類型形式參數1,?){
執(zhí)行語句;
return返回值;
當函數沒有具體的返回值時,返回的返回值類型用
void關鍵字表示。
如果函數的返回值類型是void時,return語句可以
省略不寫的,系統(tǒng)會幫你自動加上。
return的作用:結束函數。結束功能。
如何定義一個函數?
函數其實就是一個功能,定義函數就是實現功能,通
過兩個明確來完成:
1)、明確該功能的運算完的結果,其實是在明確這個
函數的返回值類型。
2)、在實現該功能的過程中是否有未知內容參與了運
算,其實就是在明確這個函數的參數列表(參數類型&參數個
數)。
函數的作用:
1)、用于定義功能。
2)、用于封裝代碼提高代碼的復用性。
注意:函數中只能調用函數,不能定義函數。
主函數:
1)、保證該類的獨立運行。
2)、因為它是程序的入口。
3)、因為它在被jvm調用。
函數定義名稱是為什么呢?
答:1)、為了對該功能進行標示,方便于調用。
2)、為了通過名稱就可以明確函數的功能,為了增加
代碼的閱讀性。
重載的定義是:在一個類中,如果出現了兩個或者兩
個以上的同名函數,只要它們的參數的個數,或者參數的類
型不同,即可稱之為該函數重載了。
如何區(qū)分重載:當函數同名時,只看參數列表。和返
回值類型沒關系。
7,數組:用于存儲同一類型數據的一個容器。好處:
可以對該容器中的數據進行編號,從0開始。數組用于封裝
數據,就是一個具體的實體。
如何在java中表現一個數組呢?兩種表現形式。
1)、元素類型變量名=new元素類型;
2)、元素類型變量名={元素1,元素2...};
元素類型變量名=new元素類型{元素1,元素
2...);
〃二分查找法。必須有前提:數組中的元素要有序。
publicstaticinthalfSeach2(intarr,intkey){
intmin,max,mid;
min=0;
max=;
mid=(max+min)>>1;//(max+min)/2;
while(arr!=key){
if(key>arr){
min=mid+1;
}
elseif(keymax=mid-1;
if(maxreturn-1;
mid=(max+min)>>1;
}
returnmid;
java分了5片內存。
1:寄存器。2:本地方法區(qū)。3:方法區(qū)。4:棧。5:
堆。
棧:存儲的都是局部變量(函數中定義的變量,函
數上的參數,語句中的變量);
只要數據運算完成所在的區(qū)域結束,該數據就會被釋
放。
堆:用于存儲數組和對象,也就是實體。啥是實體???
就是用于封裝多個數據的。
1:每一個實體都有內存首地址值。
2:堆內存中的變量都有默認初始化值。因為數據類
型不同,值也不一樣。
3:垃圾回收機制。
---------------------------------------------三:面向
對象:★★★★★
特點:1:將復雜的事情簡單化。
2:面向對象將以前的過程中的執(zhí)行者,變成了指揮
者。
3:面向對象這種思想是符合現在人們思考習慣的一
種思想。
過程和對象在我們的程序中是如何體現的呢?過程
其實就是函數;對象是將函數等一些內容進行了封裝。
匿名對象使用場景:
1:當對方法只進行一次調用的時候,可以使用匿名
對象。
2:當對象對成員進行多次調用時,不能使用匿名對
象。必須給對象起名字。
在類中定義其實都稱之為成員。成員有兩種:
1:成員變量:其實對應的就是事物的屬性。
Java基礎知識總結
寫代碼:
1,明確需求。我要做什么?
2,分析思路。我要怎么做?1,2,3。
3,確定步驟。每一個思路部分用到哪些語句,方法,
和對象。
4,代碼實現。用具體的java語言代碼把思路體現出
來。
學習新技術的四點:
1,該技術是什么?
2,該技術有什么特點(使用注意):
3,該技術怎么使用。demo
4,該技術什么時候用?testo
java概述:
1991年Sun公司的JamesGosling等人開始開發(fā)名
稱為Oak的語言,希望用于控制嵌入在有線電視交換盒、
PDA等的微處理器;
1994年將Oak語言更名為Java;
Java的三種技術架構:
JAVAEE:JavaPlatformEnterpriseEdition,開發(fā)
企業(yè)環(huán)境下的應用程序,主要針對web程序開發(fā);JAVASE:
JavaPlatformStandardEdition,完成桌面應用程序的開
發(fā),是其它兩者的基礎;JAVAME:JavaPlatformMicro
Edition,開發(fā)電子消費產品和嵌入式設備,如手機中的程
序;
1,JDK:JavaDevelopmentKit,java的開發(fā)和運行
環(huán)境,java的開發(fā)工具和jreo
2,JRE:JavaRuntimeEnvironment,java程序的運
行環(huán)境,java運行的所需的類庫+JVM(java虛擬機)。3,
配置環(huán)境變量:讓javajdkDin目錄下的工具,可以在任
意目錄下運行,原因是,將該工具所在目錄告訴了系統(tǒng),當
使用該工具時,由系統(tǒng)幫我們去找指定的目錄。
環(huán)境變量的配置:
1):永久配置方式:JAVAJ0ME=%安裝路徑%Javajdk
path=%JAVA?HOME%Din
2):臨時配置方式:setpath=%path%;C:Program
FilesJavajdkDin
特點:系統(tǒng)默認先去當前路徑下找要執(zhí)行的程序,如
果沒有,再去path中設置的路徑下找。classpath的配置:
1):永久配置方式:classpath二.;c:;e:
2):臨時配置方式:setclasspath=.;c:;e:
注意:在定義classpath環(huán)境變量時,需要注意的情
況
如果沒有定義環(huán)境變量classpath,java啟動jvm后,
會在當前目錄下查找要運行的類文件;如果指定了
classpath,那么會在指定的目錄下查找要運行的類文件。
還會在當前目錄找嗎?兩種情況:
1):如果classpath的值結尾處有分號,在具體路徑
中沒有找到運行的類,會默認在當前目錄再找一次。
2):如果classpath的值結果出沒有分號,在具體的
路徑中沒有找到運行的類,不會再當前目錄找。一般不指
定分號,如果沒有在指定目錄下找到要運行的類文件,就報
錯,這樣可以調試程序。
4,javac命令和java命令做什么事情呢?
要知道java是分兩部分的:一個是編譯,一個是運
行。
javac:負責的是編譯的部分,當執(zhí)行javac時,會
啟動java的編譯器程序。對指定擴展名的.java文件進行編
譯。生成了jvm可以識別的字節(jié)碼文件。也就是class文
件,也就是java的運行程序。
java:負責運行的部分.會啟動jvm.加載運行時所需
的類庫,并對class文件進行執(zhí)行.
一個文件要被執(zhí)行,必須要有一個執(zhí)行的起始點,這
個起始點就是main函數.
---------------------------------------------二:java
語法基礎:
1,關鍵字:其實就是某種語言賦予了特殊含義的單
詞。
保留字:其實就是還沒有賦予特殊含義,但是準備日
后要使用過的單詞。
2,標示符:其實就是在程序中自定義的名詞。比如
類名,變量名,函數名。包含0-9、a-z.$、_;注意:
1),數字不可以開頭。
2),不可以使用關鍵字。
3,常量:是在程序中的不會變化的數據。
4,變量:其實就是內存中的一個存儲空間,用于存
儲常量數據。
作用:方便于運算。因為有些數據不確定。所以確定
該數據的名詞和存儲空間。
特點:變量空間可以重復使用。
什么時候定義變量?只要是數據不確定的時候,就定
義變量。
變量空間的開辟需要什么要素呢?
1,這個空間要存儲什么數據?數據類型。
2,這個空間叫什么名字???變量名稱。
3,這個空間的第一次的數據是什么?變量的初始化
值。
變量的作用域和生存期:
變量的作用域:
作用域從變量定義的位置開始,到該變量所在的那對
大括號結束;
生命周期:
變量從定義的位置開始就在內存中活了;
變量到達它所在的作用域的時候就在內存中消失了;
數據類型:
1):基本數據類型:byte、short、int、long、float、
double,char、boolean
2):引用數據類型:數組、類、接口。
級別從低到高為:byte,char,short(這三個平
級)一>int-->float->long->double
自動類型轉換:從低級別到高級別,系統(tǒng)自動轉的;
強制類型轉換:什么情況下使用?把一個高級別的數
賦給一個別該數的級別低的變量;
運算符號:
1)、算術運算符。
+-*/%%:任何整數模2不是0就是1,所以只要
改變被模數就可以實現開關運算。
+:連接符。
++,一
2)、賦值運算符。
-+=-=*=/-%=
3)、
這些語句什么時候用?
1)、當判斷固定個數的值的時候,可以使用if,也可
以使用switcho
但是建議使用switch,效率相對較高。
switch(變量){
case值:要執(zhí)行的語句;break;
?
default:要執(zhí)行的語句;
}
工作原理:用小括號中的變量的值依次和case后面
的值進行對比,和哪個case后面的值相同了
就執(zhí)行哪個case后面的語句,如果沒有相同的則執(zhí)
行default后面的語句;
細節(jié):1):break是可以省略的,如果省略了就一直
執(zhí)行到遇到break為止;
2):switch后面的小括號中的變量應該是
byte,char,short,int四種類型中的一種;
3):default可以寫在switch結構中的任意位置;如
果將default語句放在了第一行,則不管expression與case
中的value是否匹配,程序會從default開始執(zhí)行直到第一
個break出現。
2)、當判斷數據范圍,獲取判斷運算結果boolean類
型時,需要使用if。
3)、當某些語句需要執(zhí)行很多次時,就用循環(huán)結構。
while和for可以進行互換。
區(qū)別在于:如果需要定義變量控制循環(huán)次數。建議使
用for。因為for循環(huán)完畢,變量在內存中釋放。
break:作用于switch,和循環(huán)語句,用于跳出,或
者稱為結束。
break語句單獨存在時,下面不要定義其他語句,因
為執(zhí)行不到,編譯會失敗。當循環(huán)嵌套時,break只跳出當
前所在循環(huán)。要跳出嵌套中的外部循環(huán),只要給循環(huán)起名字
即可,這個名字稱之為標號。
continue:只作用于循環(huán)結構,繼續(xù)循環(huán)用的。
作用:結束本次循環(huán),繼續(xù)下次循環(huán)。該語句單獨存
在時,下面不可以定義語句,執(zhí)行不到。
6,函數:為了提高代碼的復用性,可以將其定義成
一個單獨的功能,該功能的體現就是java中的函數。函數
就是體現之一。
java中的函數的定義格式:
修飾符返回值類型函數名(參數類型形式參數1,
參數類型形式參數1,?){
執(zhí)行語句;
return返回值;
}
當函數沒有具體的返回值時,返回的返回值類型用
void關鍵字表示。
如果函數的返回值類型是void時,return語句可以
省略不寫的,系統(tǒng)會幫你自動加上。
return的作用:結束函數。結束功能。
如何定義一個函數?
函數其實就是一個功能,定義函數就是實現功能,通
過兩個明確來完成:
1)、明確該功能的運算完的結果,其實是在明確這個
函數的返回值類型。
2)、在實現該功能的過程中是否有未知內容參與了運
算,其實就是在明確這個函數的參數列表(參數類型&參數個
數)。
函數的作用:
1)、用于定義功能。
2)、用于封裝代碼提高代碼的復用性。
注意:函數中只能調用函數,不能定義函數。
主函數:
1)、保證該類的獨立運行。
2)、因為它是程序的入口。
3)、因為它在被jvm調用。
函數定義名稱是為什么呢?
答:1)、為了對該功能進行標示,方便于調用。
2)、為了通過名稱就可以明確函數的功能,為了增加
代碼的閱讀性。
重載的定義是:在一個類中,如果出現了兩個或者兩
個以上的同名函數,只要它們的參數的個數,或者參數的類
型不同,即可稱之為該函數重載了。
如何區(qū)分重載:當函數同名時,只看參數列表。和返
回值類型沒關系。
7,數組:用于存儲同一類型數據的一個容器。好處:
可以對該容器中的數據進行編號,從0開始。數組用于封裝
數據,就是一個具體的實體。
如何在java中表現一個數組呢?兩種表現形式。
1)、元素類型變量名=new元素類型;
2)、元素類型變量名={元素1,元素2...};
元素類型變量名=new元素類型{元素1,元素
2...};
〃二分查找法。必須有前提:數組中的元素要有序。
publicstaticinthalfSeach2(intarr,intkey){
intmin,max,mid;
min=0;
max二;
mid=(max+min)>>1;//(max+min)/2;
while(arr!=key){
if(key>arr){
min=mid+1;
}
elseif(keymax=mid-1;
if(maxreturn-1;
mid=(max+min)>>1;
returnmid;
java分了5片內存。
1:寄存器。2:本地方法區(qū)。3:方法區(qū)。4:棧。5:
堆。
棧:存儲的都是局部變量(函數中定義的變量,函
數上的參數,語句中的變量);
只要數據運算完成所在的區(qū)域結束,該數據就會被釋
放。
堆:用于存儲數組和對象,也就是實體。啥是實體???
就是用于封裝多個數據的。
1:每一個實體都有內存首地址值。
2:堆內存中的變量都有默認初始化值。因為數據類
型不同,值也不一樣。
3:垃圾回收機制。
三:面向
對象:★★★★★
特點:1:將復雜的事情簡單化。
2:面向對象將以前的過程中的執(zhí)行者,變成了指揮
者。
3:面向對象這種思想是符合現在人們思考習慣的一
種思想。
過程和對象在我們的程序中是如何體現的呢?過程
其實就是函數;對象是將函數等一些內容進行了封裝。
匿名對象使用場景:
1:當對方法只進行一次調用的時候,可以使用匿名
對象。
2:當對象對成員進行多次調用時,不能使用匿名對
象。必須給對象起名字。
在類中定義其實都稱之為成員。成員有兩種:
1:成員變量:其實對應的就是事物的屬性。
2:成員函數:其實對應的就是事物的行為。
所以,其實定義類,就是在定義成員變量和成員函數。
但是在定義前,必須先要對事物進行屬性和行為的分析,才
可以用代碼來體現。
JAVA基礎知識總結
第一章Java入門:
1.java誕生:
1995年5月23日Sun公司發(fā)布了版本;作者:James
Gosling.
JAVAME微型版
手機軟件開發(fā)
JAVASE標準版
桌面應用程序
JAVAEE企業(yè)版
企業(yè)級應用開發(fā)
2.java語言特點:
1.簡單
沒有C、C++中的頭文件,指針,運算符重載
2.面向對象
可以開發(fā)出較大型的應用程序
3.分布式
通過網絡訪問應用程序,突破空間限制
4.健壯性(編譯時錯誤檢測)
消除有出錯傾向的狀態(tài):指針
5.安全性(蠕蟲病毒)
禁止運行時堆棧溢出、內存空間未授權讀寫
6.可移植性
JVM
3.JAVA的特性、核心機制:
特性:封裝:對外部不可見,保護類中的操作不被
外部直接訪問
屬性私有化,提供公共的get、set方法
封裝的好處:
L數據更安全,可以在方法內增加驗證
2.可以讓調用者不去關心實現的細節(jié),重用
繼承:擴張類的功能
多態(tài):
是允許將父對象引用一個子對象的技術
Employeeemployee=manager;
允許父類對象來引用子類對象,但是實際運行過程中
調用的是子
類的方法或者屬性
編譯時調用父類方法,運行時調用的是實際引用類型
的方法,這
種現象叫做動態(tài)綁定
多態(tài)現象:運行時多態(tài)、編譯時多態(tài)
L編譯時多態(tài):方法的重載(不建議舉例)
2.運行時多態(tài):方法的覆蓋(建議舉例)
核心機制:虛擬機(JVMjavavirtualmachine)垃
圾回收機制garbagecollector
:1995年SUN公司98年接下來是目前已經更名為
JAVA正在使用的是java版本.
JDK安裝目錄介紹:
Bin編譯器和工具
Demo演示
DocsHTML格式的類庫文檔
Include用于編譯本地方法的文件
Jrejava運行環(huán)境文件
Lib類庫文件
Src類庫源文件
運行環(huán)境變量配置:
JAVA_H0ME:JDK安裝目錄,方便在后面兩個環(huán)境變量
的配置中直接被
調用即可
path:%JAVA_HOME%Din列出可執(zhí)行文件的搜素路徑
classpath:%JAVAHOME%lib
%JAVA_H0ME%
是java加載類的路徑,只有在classpath設置的路
徑中的類才能被加載
中注釋:
1.單行注釋:
//
2.多行注釋:
/**/
3.文檔注釋
/***/
通過javadoc命令將文檔注釋提取出來生成java幫
助文檔:Java的三種注釋:
與publicclass區(qū)別:
如果一個類聲明的時候使用了public進行聲明,則
類名稱必須與文件名稱完全一致,如果類的聲明使用了
class的話,則類名稱可以與文件名稱不一致,但執(zhí)行的時
候肯定執(zhí)行的是生成后的類名稱。
第二章標示符,運算符
1.標示符:在java語言中用來給一個類、變量或方
法命名的符號
標示符的命名規(guī)則:
1.以字母,或“$”符號開頭
2.可以包含字母、、"$”和數字符號
3.大小寫敏感
4.不能與保留關鍵字沖突
5.沒有長度限制
Java中命名規(guī)范:
1.類名,接口名:每個單詞的首字母應該大寫
2.字段、方法以及對象:第一個單詞首字母應小寫,
其他單詞首字母大寫
3.常量:全部用大寫字母表示
包:它們全都字母小寫
5.命名要做到見名知意
2.運算符:
1.算數運算符:
2.自增switch(){case}
switchcase:
說明:
1.表達式expression可以是以下四種基本數據類型
和枚舉類型(byte,short,int,char)
子句中的值必須是常量,而且所有case子句中的值
應是不同的。
通常與break語句聯用,以保證多路分支的正確實現,
多個case可以公用一組執(zhí)行語句。
循環(huán)語句:循環(huán)語句for
循環(huán)語句
循環(huán)語句
和continue語句
b
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯系上傳者。文件的所有權益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網頁內容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
- 4. 未經權益所有人同意不得將文件中的內容挪作商業(yè)或盈利用途。
- 5. 人人文庫網僅提供信息存儲空間,僅對用戶上傳內容的表現方式做保護處理,對用戶上傳分享的文檔內容本身不做任何修改或編輯,并不能對任何下載內容負責。
- 6. 下載文件中如有侵權或不適當內容,請與我們聯系,我們立即糾正。
- 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 在線教育廣告精準投放合同(2篇)
- 花卉行業(yè)銷售總監(jiān)聘任合同
- 河道整治挖機租賃合同
- 市政道路路基防護施工合同
- 2024戊方提供品牌策劃合同
- 2024版美容店店鋪租賃合同書
- 酒店多功能會議室裝修合同
- 微電影制作拍攝進度保證協議
- 酒店室外景觀施工合同
- 林地租賃合同:風力發(fā)電項目
- 深圳2024-2025學年度四年級第一學期期末數學試題
- 17J008擋土墻(重力式、衡重式、懸臂式)圖示圖集
- 2025年濟南鐵路局招聘筆試參考題庫含答案解析
- 2024至2030年中國大顆粒尿素行業(yè)投資前景及策略咨詢研究報告
- 《長方體和正方體》復習(教案)
- 特種設備鍋爐日管控、周排查、月調度主要項目及內容表
- 2023年山西云時代技術有限公司招聘筆試題庫及答案解析
- 右心導管檢查及心血管造影ppt課件
- 乳膠漆質量檢驗批驗收記錄
- 大氣課程設計---袋式除塵器
- WTY-53,54說明書
評論
0/150
提交評論