目的:
任務(wù)驅(qū)動(dòng)式學(xué)習(xí)方法,為完成某個(gè)編程,而學(xué)習(xí)相關(guān)的知識(shí)點(diǎn),今天主要講解了有關(guān)static、this、set/get、公有性以及私有性等。
技術(shù):
1.給對(duì)象賦值的方法:
,,,
*1.對(duì)于public修飾的屬性 使用對(duì)象直接調(diào)用
- p.number = "A";
- 2.對(duì)于private修飾的屬性 不能直接調(diào)用 只能間接調(diào)用
- -setter/getter方法 (建議將setter/getter定義在最后面,避免干擾閱讀)
- p.number = set("Jack");
- -構(gòu)造函數(shù)
- 創(chuàng)建一個(gè)類的一個(gè)對(duì)象的時(shí)候 就會(huì)被調(diào)用的方法
*方法重載 :同一個(gè)類里面有多個(gè)
,,,
1.構(gòu)造函數(shù):
//類默認(rèn)的構(gòu)造函數(shù)
public Poker1(){} //一旦創(chuàng)建時(shí)就會(huì)被調(diào)用
//自己編寫(xiě)的構(gòu)造函數(shù) (方法名相同,參數(shù)類型或個(gè)數(shù)不同)
public Poker1(String number,String color){
//具體內(nèi)容
}
2.setter/getter方法:
,,,
public String getNumber() {
return number;
}
//給外部提供一個(gè)set方法 通過(guò)這個(gè)方法間接給number賦值
//可以對(duì)外部給的值進(jìn)行控制
//給外部提供一個(gè)get方法 訪問(wèn)某個(gè)變量的值
//快捷鍵 Alt+insert 具體看Code->Generate->快捷鍵
public void setNumber(String number) {
this.number = number;
}
public String getColor() {
return color;
}
public void setColor(String color) {
this.color = color;
}
,,,
2.static靜態(tài):
- static 修飾是屬性和方法 都會(huì)在對(duì)象創(chuàng)建之前優(yōu)先加載
- 屬性 靜態(tài)屬性
- 方法 靜態(tài)方法
- 實(shí)例方法/對(duì)象方法 :必須創(chuàng)建某一個(gè)對(duì)象才能調(diào)用的方法
- 類方法/靜態(tài)方法 :不需要?jiǎng)?chuàng)建對(duì)象 直接用這個(gè)類就可以調(diào)用
- 靜態(tài)屬性:1.定義一個(gè)常量
2.單例設(shè)計(jì)模式
,,,
class Myclass{
public void test() {
System.out.println("這是對(duì)象方法");
}
public static void test1() {
System.out.println("這是靜態(tài)方法");
}
public static void test1() {
System.out.println("這是靜態(tài)方法");
}
}
class T2{
public static void main(String[] agrc){
//使用類的實(shí)例方法
Myclass c1 = new Myclass();
c1.test();
//使用類方法
Myclass.test1();
//什么情況下需要靜態(tài)方法
//工廠設(shè)計(jì)模式Factory
//當(dāng)不需要記錄數(shù)據(jù) 只關(guān)心功能 就可以調(diào)用靜態(tài)方法
//注意:靜態(tài)方法里面不能調(diào)用這個(gè)類的屬性和非靜態(tài)方法
}
}
,,,
3.this使用方法:
//通常給一個(gè)屬性賦值 形參名盡量與屬性名一致
//變量在使用時(shí)有就近原則
public Poker1(String number,String color){
//number = number;調(diào)用的都是形參,成員變量number沒(méi)有任何改變
//調(diào)用構(gòu)造方法的時(shí)候 這個(gè)對(duì)象在內(nèi)存中已經(jīng)被分配好了
//this指的就是創(chuàng)建的那個(gè)對(duì)象 //例14行創(chuàng)建p1對(duì)象時(shí)調(diào)用構(gòu)造函數(shù)時(shí)的this指p1
this.number = number;
this.color = color;
}
//14行:Poker1 p1 = new Poker1("K","?");
心得:
總會(huì)有這種感覺(jué):上課時(shí)講的都能很好的吸收,有些知識(shí)點(diǎn)更是以前就了解就的,但當(dāng)自己獨(dú)自編寫(xiě)程序時(shí),總是因?yàn)樗伎疾蝗嬉约澳尘帉?xiě)不出來(lái)。哎,主要感覺(jué)是自己的代碼編寫(xiě)量少了,沒(méi)那意識(shí),關(guān)鍵是還懶惰,怕是沒(méi)救了哦,但是我也必須得努力了,怕被別人甩得很遠(yuǎn)!??!