一.Java標(biāo)識符的命名規(guī)則:
Java語言中,對于變量单刁,常量灸异,函數(shù),語句塊也有名字羔飞,我們統(tǒng)統(tǒng)稱之為Java標(biāo)識符.
1)? 標(biāo)識符由字母肺樟、數(shù)字、下劃線“_”逻淌、美元符號“$”或者人民幣符號“¥”組成儡嘶,并且首字母不能是數(shù)字。
2) 不能把關(guān)鍵字和保留字作為標(biāo)識符恍风。
3) 標(biāo)識符沒有長度限制蹦狂。
4) 標(biāo)識符對大小寫敏感。
Java編程規(guī)范:
1)類名和接口名:首字母大寫朋贬,其余字母小寫凯楔。如SamDoc
2)方法名和變量名:首字母小寫,其余的字母大寫锦募。
如bothEyesOfDoll摆屯。
3)包名:字母全部小寫。如糠亩,com.abc.dollapp虐骑。
4)常量名:采用大寫形式,單詞之間以下劃線“_”隔開赎线。
如DEFAULT_COLOR_DOL廷没。
數(shù)據(jù)類型:
整數(shù)型:int ?long
浮點型:double float
字符型:char ?String?
布爾型:boolean
類:class
接口:interface
輸出語句:
System.out.println();
常量:
語法:final 數(shù)據(jù)類型 常量名=值;(常量名一般用大寫字母)
條件運算符( ? : )也稱為 “三元運算符”
語法形式:布爾表達(dá)式 垂寥? 表達(dá)式1 :表達(dá)式2
if條件語句:
語法:
if( 條件 ){
? ? ?條件為真實運行次大括號內(nèi)的語句
?} else {
否者運行此大括號內(nèi)的語句
? ? ? ? }
多重if語句:
if(條件){
成立語句
}else if (條件){
?成立語句
? ? ? ? ?}else if (條件){
? ? ? ? ? ? ?成立語句
? ? ? ? ? ? ? ? ? }else {
以上都不成立則輸出這條語句颠黎;
? ? ? ? ? ? ? ? ? ? ? }
.equals()
java中字符串比較需要用.equals()來比較,并不能用比較運算符
例:
int score = 94;
String sex = "女";
if(score>80){
? ? ? ? ? ? ?if(sex.equals("女")){
? ? ? ? ? ? ? ? ? ? ? ?System.out.println("進入女子組決賽");
? ? ? ? ? ? ? }else {
? ? ? ? ? ? ? ? ? ? ? ? System.out.println("進入男子組決賽");
}
}else {
System.out.println("未能進入決賽");
}
其中if(sex.equals("女")){這條語句就是在判斷滞项,sex這個字符串變量中的字符串是否是女狭归。
switch語句
語法:
當(dāng) switch 后表達(dá)式的值和 case 語句后的值相同時,從該位置開始向下執(zhí)行文判,直到遇到 break 語句或者 switch 語句塊結(jié)束过椎;如果沒有匹配的 case 語句則執(zhí)行 default 塊的代碼。
循環(huán)語句while
語法:
while(判斷條件){
循環(huán)操作
}
執(zhí)行過程:
< 1 >戏仓、?判斷 while 后面的條件是否成立( true / false )
< 2 >疚宇、 當(dāng)條件成立時亡鼠,執(zhí)行循環(huán)內(nèi)的操作代碼 ,然后重復(fù)執(zhí)行< 1 >灰嫉、< 2 >拆宛, 直到循環(huán)條件不成立為止
特點:先判斷,后執(zhí)行
true==真讼撒,false==假
表倒式2>1,是真浑厚,得到trun, 表達(dá)式2<1,是錯的,為假根盒,可得到false钳幅,真則執(zhí)行循環(huán)操作;假跳出
do....while語句
語法:
執(zhí)行過程:
<1>炎滞、 先執(zhí)行一遍循環(huán)操作敢艰,然后判斷循環(huán)條件是否成立
<2>、 如果條件成立册赛,繼續(xù)執(zhí)行< 1 > 钠导、< 2 >,直到循環(huán)條件不成立為止
特點:先執(zhí)行森瘪,后判斷
do...while語句牡属,至少會循環(huán)一次循環(huán)操作;
for語句
語法:
執(zhí)行過程:
<1>扼睬、 執(zhí)行循環(huán)變量初始化部分逮栅,設(shè)置循環(huán)的初始狀態(tài),此部分在整個循環(huán)中只執(zhí)行一次
<2>窗宇、 進行循環(huán)條件的判斷措伐,如果條件為 true ,則執(zhí)行循環(huán)體內(nèi)代碼军俊;如果為 false 侥加,則直接退出循環(huán)
<3>、 執(zhí)行循環(huán)變量變化部分蝇完,改變循環(huán)變量的值官硝,以便進行下一次條件判斷
<4>、 依次重新執(zhí)行< 2 >短蜕、< 3 >、< 4 >傻咖,直到退出循環(huán)
特點:結(jié)構(gòu)簡潔易讀,
break和continue
當(dāng)循環(huán)中出現(xiàn)break時朋魔,整個循環(huán)語句立刻終止,執(zhí)行接下來的語句
當(dāng)循環(huán)中出現(xiàn)continue時卿操,此次循環(huán)跳過警检,進入下次一次循環(huán)孙援;
Eclipse快捷鍵 ait+/? 內(nèi)容提示快捷鍵
Scanner工具類
Scanner 工具類位于java.util包中,使用時需要導(dǎo)入
使用步驟:
1.導(dǎo)入 java.util.Scanner
2.創(chuàng)建Scanner對象
3.接收并保存用戶輸入的值
數(shù)組:
聲明數(shù)組:
數(shù)據(jù)類型【】 數(shù)據(jù)名扇雕;
數(shù)據(jù)類型 數(shù)據(jù)名【】拓售;
方法:
void , ?return
返回值類型:方法返回值的類型镶奉,如果方法不返回任何值础淤,則返回值類型指定為 void ;如果方法具有返回值哨苛,則需要指定返回值的類型鸽凶,并且在方法體中使用 return 語句返回值
無參無返回值方法
無參有返回值方法:
無返回值,有參方法:
帶參帶返回值方法:
方法重載
如果同一個類中包含了兩個或兩個以上方法名相同建峭、方法參數(shù)的個數(shù)玻侥、順序或類型不同的方法,則稱為方法的重載亿蒸,也可稱該方法被重載了
判斷方法重載的依據(jù):
1凑兰、 必須是在同一個類中
2、 方法名相同
3边锁、 方法參數(shù)的個數(shù)姑食、順序或類型不同
4、 與方法的修飾符或返回值沒有關(guān)系
產(chǎn)生隨機數(shù)砚蓬;
(int) (Math.random() * 100);
0-99的隨機數(shù)矢门,可修改100調(diào)節(jié),改成50就是0-49的隨機數(shù)
定一個類的步驟:
1.定義類名灰蛙;
2.編寫類的屬性祟剔;
3.編寫類的方法;
創(chuàng)建對象:
類名 對象名=new 類名()摩梧;
使用對象:
引用對象的屬性:對象名.屬性
引用對象的方法:對象名.方法()
構(gòu)造方法:
語法格式:
public ?構(gòu)造方法名(可有參物延,可無參){
//初始化代碼
}
1.使用new+構(gòu)造方法 創(chuàng)建一個新的對象
2.構(gòu)造方法是一個定義在java類中的一個用來初始化對象的方法
構(gòu)造方法與類同名切,沒有返回值仅父;
3.構(gòu)造方法不但可以給對象的屬性賦值叛薯,還可以保證給對象的屬性賦一個合理的值;
static 使用之靜態(tài)變量
Java 中被 static 修飾的成員稱為靜態(tài)成員或類成員笙纤。它屬于整個類所有耗溜,而不是某個對象所有,即被類的所有對象所共享省容。靜態(tài)成員可以使用類名直接訪問抖拴,也可以使用對象名進行訪問。當(dāng)然腥椒,鑒于他作用的特殊性更推薦用類名訪問
public 修飾符表示公開的公有的
public static int a=100; //定義公有的靜態(tài)變量a
static 使用之靜態(tài)方法
1阿宅、靜態(tài)方法中可以直接調(diào)用同類中的靜態(tài)成員候衍,但不能直接調(diào)用非靜態(tài)成員
2、在普通成員方法中洒放,則可以直接訪問同類的非靜態(tài)變量和靜態(tài)變量
3畏吓、靜態(tài)方法中不能直接調(diào)用非靜態(tài)方法符匾,需要通過對象來訪問非靜態(tài)方法忌卤。
static 使用之靜態(tài)初始化塊
java中可以通過初始化塊進行數(shù)據(jù)賦值喻括;
在類的聲明中,可以包含多個初始化塊煌茴,當(dāng)創(chuàng)建類的實例時随闺,就會依次執(zhí)行這些代碼塊。如果使用 static 修飾初始化塊蔓腐,就稱為靜態(tài)初始化塊矩乐。
注意:態(tài)初始化塊只在類加載時執(zhí)行,且只會執(zhí)行一次回论,同時靜態(tài)初始化塊只能給靜態(tài)變量賦值散罕,不能初始化普通的成員變量。
封裝的實現(xiàn)步驟:(具體看第二季第二章)
1.修改屬性的可見性傀蓉,設(shè)為private
2.創(chuàng)建getter/setter方法欧漱,用于屬性的讀寫
get關(guān)鍵字加屬性名稱,set關(guān)鍵字加屬性名稱
get方法:獲取葬燎,無參有返回?误甚; ?set方法:設(shè)置,有參無返回
3.在getter/setter方法中加入屬性控制語句谱净,對屬性值的合法性進行判斷窑邦;
包:
1.包的作用:
管理Java文件;
解決同名文件沖突壕探;
2..定義包:package 包名
注:必須放在Java源程序的第一行
包名中間可以使用"."號隔開
eg:com.imooc.MyClass
3.系統(tǒng)中的包
java.(功能)..(類)
java.lang.(類) 包含java語言基礎(chǔ)的類
java.util.(類) 包含java語言中各種工具類
java.io.(類) 包含輸入冈钦。輸出相關(guān)功能的類
繼承:
語法規(guī)則:
class 子類 extends父類
例:
class Dog extends Animal{
...
}
繼承是類與類的一種關(guān)系,是一種“is a”的關(guān)系李请;瞧筛、
子類擁有父類的所有屬性和方法;
方法的重寫:
如果子類對繼承父類的方法不滿意导盅,是可以重寫父類繼承的方法的较幌,當(dāng)調(diào)用方法時會優(yōu)先調(diào)用子類的方法。
語法規(guī)則:
a.返回值類型
b.方法名
c.參數(shù)類型及個數(shù)
都要與父類繼承的方法相同白翻,才叫方法的重寫绅络。
繼承的初始化順序是:先執(zhí)行父類的屬性初始化,再執(zhí)行父類的構(gòu)造方法嘁字,再執(zhí)行子類的屬性初始化恩急,最后執(zhí)行子類的構(gòu)造方法;
final關(guān)鍵字:
使用final關(guān)鍵字做標(biāo)識有‘最終的“含義纪蜒;
final可以修飾類衷恭,方法,屬性纯续,變量随珠;
final修飾類時,類不可以被繼承猬错;
final修飾方法時窗看,方法不可以被覆蓋(重寫);
final修飾屬性時倦炒,則該類的屬性不會進行隱式的初始化(類的初始化屬性必須有值)或在構(gòu)造方法中賦值(二者只能選其一)显沈;
final修飾變量,變量只能賦一次值逢唤,即變成常量拉讯;
super關(guān)鍵字:
在對象的內(nèi)部使用,可以代表父類對象鳖藕。
1.訪問父類的屬性
super.age
2.訪問父類的方法
super.eat()
super的應(yīng)用
子類的構(gòu)造的過程當(dāng)中必須調(diào)用其父類的構(gòu)造方法魔慷;
如果子類的構(gòu)造方法中沒有顯示調(diào)用父類的構(gòu)造方法,則系統(tǒng)默認(rèn)調(diào)用父類無參的構(gòu)造方法著恩。
如果顯示的調(diào)用構(gòu)造方法院尔,必須在子類的構(gòu)造方法的第一行。
如果子類構(gòu)造方法中既沒有顯式調(diào)用父類的構(gòu)造方法喉誊,而父類又沒有無參的構(gòu)造方法邀摆,則編譯出錯;
Object 類
Object是所有類的父類裹驰,如果一個類沒有使用extends關(guān)鍵字明確標(biāo)識繼承另外一個類隧熙,那么這個類默認(rèn)繼承Object類;
Object類中的方法幻林,適合所有子類贞盯;
1.toString () 方法:
在Object類里定義toString ()方法的時候返回的對象的哈希code碼(對象地址字符串)
可以通過重寫toString() 方法表示出對象的屬性;
equals()方法:
比較的是對象的引用是否指向同一塊地址沪饺。
Dog dog=new Dog()
一般情況下比較兩個對象時比較他們的值是否一致躏敢,所以要進行重寫。
這章知識點很多整葡,需要仔細(xì)學(xué)習(xí)件余,感謝慕課網(wǎng)