java基础语句_【Java基础-Java语言基础】
知識點:1.關(guān)鍵字 2.標識符 3.變量和常量
一、關(guān)鍵字
1.Java中的關(guān)鍵字有很多一共53個關(guān)鍵字有兩個是保留字(java的關(guān)鍵字都是小寫的!!)
2.Java中的保留字
(1)const 常量,數(shù)量
(2)goto 轉(zhuǎn)到
3.Java的關(guān)鍵字
(1)訪問修飾符的關(guān)鍵字(共3個)
關(guān)鍵字
意思
備注,常用
public
公有的
可跨包,(默認選擇)
protected
受保護的
當前包內(nèi)可用
private
私有的
當前類可用
(2)定義類、接口、抽象類和實現(xiàn)接口、繼承類的關(guān)鍵字、實例化對象(共6個)
(3)包的關(guān)鍵字(共2個)
(4)數(shù)據(jù)類型的關(guān)鍵字(共12個)
(5)條件循環(huán)(流程控制)(共12個)
(6)修飾方法、類、屬性和變量(共9個)
static 例子:
public class Test{
class A{} //內(nèi)部類
ActionListener al=new ActionListener(···){} //匿名內(nèi)部類
}
靜態(tài)塊優(yōu)先于其他方法/類的執(zhí)行
(7)錯誤處理(共5個)
throw是你執(zhí)行的動作。比如你覺得可能有異常,那么就抱出去?如:
String?a; if(a?==?null),
throw?new?exception("a為null");
所以throw是一個拋出去的動作
throws只用在一個方法的末端,表示這個方法體內(nèi)部如果有異常,這拋給它的調(diào)用者。 如:?public?void?add(int?a,?int?b)?throws?Exception(); 這個方法表示,在執(zhí)行這個方法的時候,可能產(chǎn)生一個異常,如果產(chǎn)生異常了,那么誰調(diào)用了這個方法,就拋給誰。(來自百度)
(8)不知道是什么(共2個)
Enum:代表一組常用常量,可用來代表一類相同類型的常量值如:
性別:
public?enum?SexEnum?{
male,?female;
}
顏色:
public?enum?Color?{
RED,?BLUE,GREEN,BLACK;
}
枚舉對象里面的值都必須是唯一的。
附:throw?和throws的差別
區(qū)別一:
throw?是語句拋出一個異常;throws?是方法拋出一個異常;
throw語法:throw?
在方法聲明中,添加throws子句表示該方法將拋出異常。
throws語法:[]([])[throws]
其中:異常類可以聲明多個,用逗號分割。
區(qū)別二:
throws可以單獨使用,但throw不能;
區(qū)別三:
throw要么和try-catch-finally語句配套使用,要么與throws配套使用。但throws可以單獨使用,然后再由處理異常的方法捕獲。
throws?E1,E2,E3?只是告訴程序這個方法可能會拋出這些個異常,方法的調(diào)用者可能要處理這些異常。而這些異常E1,E2,E3可能是該函數(shù)體產(chǎn)生的。
而throw是明確之處這個地方要拋出這個異常。
void?doA()?throws?Exception1,?Exception3?{
try?{
……
}?catch(Exception1?e)?{
throw?e;
}?catch(Exception2?e)?{
System.out.println("出錯了");
}
if?(a?!=?b)
throw?new?Exception3("自定義異常");
}
代碼塊……中可能產(chǎn)生異常Exception1、Exception2和Exception3。
如果產(chǎn)生Exception1異常,則捕捉了之后拋出由該方法的調(diào)用者去做處理;
如果產(chǎn)生Exception2異常,則該方法自己做了處理(打印出了說出錯了),所以該方法就不會再向外拋出Exception2異常了,void?doA()?throws?Exception1,,Excpetion3里面的Exception2也就不用寫了;
而Exception3異常是該方法的某段邏輯出錯,程序員自己作了處理在該段邏輯錯誤的情況下拋出異常Exception3,則調(diào)用者也需要處理。
throw語句用在方法體內(nèi),表示拋出異常,由方法體內(nèi)的語句處理
throws語句用在方法聲明后面,表示再拋出異常,由調(diào)用這個方法的上一級方法中的語句來處理
throws主要是聲明這個方法會拋出這種類型的異常,使其他地方調(diào)用它時知道要捕獲這個異常。
throw是具體向外拋異常的動作,所以它是拋出一個異常實例。
throws說明你有哪個可能,傾向
throw的話,那就是你把那個傾向變成真實的了
同時:
1)throws出現(xiàn)在方法函數(shù)頭;而throw出現(xiàn)在函數(shù)體;
2)throws表示出現(xiàn)異常的一種可能性,并不一定會發(fā)生這些異常;throw則是拋出了異常,執(zhí)行throw則一定拋出了某種異常;
3)兩者都是消極處理異常的方式(這里的消極并不是說這種方式不好),只是拋出或者可能拋出異常,但是不會由函數(shù)去處理異常,真正的處理異常由函數(shù)的上層調(diào)用處理。
二、標識符
標識符就是用于給 Java 程序中變量、類、方法等命名的符號。例:
使用標識符時,需要遵守幾條規(guī)則:
1. ?標識符可以由字母、數(shù)字、下劃線(_)、美元符($)組成,但不能包含 @、%、空格等其它特殊字符,不能以數(shù)字開頭。譬如:123name?就是不合法滴
2. ?標識符不能是 Java 關(guān)鍵字和保留字( Java 預留的關(guān)鍵字,以后的升級版本中有可能作為關(guān)鍵字),但可以包含關(guān)鍵字和保留字。如:不可以使用?void?作為標識符,但是?Myvoid?可以
3. ?標識符是嚴格區(qū)分大小寫的。 所以涅,一定要分清楚?imooc?和?IMooc?是兩個不同的標識符哦!
4. ?標識符的命名最好能反映出其作用,做到見名知意
三、變量和常量
3.1 定義變量
變量名稱由字母、數(shù)字、下劃線(_)、美元符($)組成,但是不包括@、%、空格等,但是開頭不能為數(shù)字。
變量的一些命名原則:
1.變量由多個單詞組成時,第一個單詞首字母小寫,其后單詞首字母大寫,即駝峰式命名
2.變量命名時應(yīng)該顧名思義,同時應(yīng)該盡量簡短
ps:Java中是區(qū)分大小寫的,但是沒有長度限制
3.2 數(shù)據(jù)類型
Java中數(shù)據(jù)類型包括基本數(shù)據(jù)類型和引用數(shù)據(jù)類型;基本數(shù)據(jù)類型存儲數(shù)據(jù)本身,而引用數(shù)據(jù)類型則存儲數(shù)據(jù)的地址。引用數(shù)據(jù)類型包括類、數(shù)據(jù)、接口,而引用數(shù)據(jù)類型包括數(shù)值型、字符型、布爾型。
數(shù)據(jù)類型說明字節(jié) 應(yīng)用
int整型4存儲整數(shù)
float單精度浮點型4存儲小數(shù)
double雙精度浮點型 8存儲小數(shù)
char字符型2存儲一個字符,用‘ ’表示
boolean布爾型1表示真假,只有ture或false
java 中 float 與 double 的區(qū)別java中默認聲明的小數(shù)是double類型的,如double d=4.0如果聲明: float x = 4.0則會報錯,需要如下寫法:float x = 4.0f或者float x = (float)4.0其中4.0f后面的f只是為了區(qū)別double,并不代表任何數(shù)字上的意義對編程人員而言,double 和 float 的區(qū)別是double精度高,但double消耗內(nèi)存是float的兩倍,且double的運算速度較float稍慢。java中的整數(shù)默認類型為int類型(占
內(nèi)存32位),而float32位,16.0在float表示范圍內(nèi),所以int類型可以向float類型轉(zhuǎn)換;而java中小數(shù)默認類型是double,它不能向低位數(shù)的數(shù)據(jù)類型轉(zhuǎn)換,否則受損。
3.3 自動類型轉(zhuǎn)換和強制類型轉(zhuǎn)換
1.目標類型能與源類型兼容,如 double 型兼容 int 型,但是char 型不能兼容int 型
2.目標類型大于源類型,如 double 類型長度為 8 字節(jié),int 類型為4 字節(jié),因此double 類型的變量里直接可以存放int 類型的數(shù)據(jù),但反過來就不可以了
強制類型轉(zhuǎn)換
double one = 12.6;
int another = (int)one;
常量
它的值被設(shè)定后,在程序運行過程中不允許改變。
語法:final 常量名 = 值
常量名一般使用大寫字符
final int SCORE = 100;
總結(jié)
以上是生活随笔為你收集整理的java基础语句_【Java基础-Java语言基础】的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: Python实现直角坐标系求两点间距离
- 下一篇: 使用TortoiseSVN将文件回退到某