1.方法的簽名:方法名+引數列表
2.方法的過載(overload):
1)發生在乙個類中,方法名稱相同,引數列表不同
2)編譯器在編譯時自動根據簽名繫結呼叫不同的方法
3.構造方法:
1)常常給成員變數賦初值
2)與類同名,沒有返回值型別
3)在建立(new)物件時被自動呼叫
4)若自己不寫構造方法,則編譯器預設乙個無參構造方法,
若自己寫了構造方法,則編譯器不再預設提供
5)構造方法可以過載
4.this:指代當前物件,哪個物件調指的就是哪個物件
只能用在方法中,方法中訪問成員變數之前預設都有個this.
this的用法:
1)this.成員變數名——訪問成員變數
2)this.方法名()——–呼叫方法
3)this()—————呼叫構造方法
5.引用型別陣列:
引用型別陣列
基本型別陣列
1)
cell cells = new cell[4]; //建立格仔陣列物件
cells[0] = new cell(2,5); //建立格仔物件
cells[1] = new cell(2,6);
cells[2] = new cell(2,7);
cells[3] = new cell(3,6);
2)
cell cells = new cell;
3)
int arr = new
int[3];
arr[0] = new
int[2];
arr[1] = new
int[3];
arr[2] = new
int[2];
arr[1][0] = 100; //arr中第2個元素中的第1個元素賦值為100
4)
int arr = new int[3][4]; //3行4列
for(int i=0;ilength;i++)
}
巢狀陣列:3為arr的長度
4為arr中每個元素的長度
int arr = new int[3][4]; //3行4列
for(int i=0;i
}
i=1
j=0 arr10
j=1 arr11
j=2 arr12
j=3 arr13
//宣告整型陣列的陣列arr,包含3個元素
//每個元素都是int型,預設值為null
int arr = new
int[3];
arr[0] = new
int[4];
arr[1] = new
int[4];
arr[2] = new
int[4];
//給arr中第2個元素中的第1個元素賦值為100
arr[1][0] = 100;
arr—————–int
arr[0]————–int
arr[0][0]———–int
//宣告整型陣列arr,包含4個元素
//每個元素都是int型別,預設值為0
int arr = new
int[4];
//宣告cell型陣列cells,包含4個元素
//每個元素都是cell型,預設值為null
cell cells = new cell[4];
//宣告student陣列stus,包含26個元素
//每個元素都是student型,預設值為null
student stus = new student[26];
乙個類,肯定有構造方法—–對
自己可不可以不寫構造——-可以
寫了更方便
成員變數:
class student
//給成員變數賦初值
student(string name1,int age1,string address1)
}
演示方法的過載
package oo.day02;
/* * 補充:
* 1.乙個檔案中可以包含多個類
* 2.public修飾的類只能有乙個
* 3.public修飾的類必須與檔名相同
*///演示方法的過載
public
class overloaddemo
}class aoo
void say(string name){}
void say(string name,int age){}
void say(int age,string name){}
//int say() //編譯錯誤,過載與返回值型別無關
//void say(string address){} //編譯錯誤,過載與引數名稱無關
}
引用型別陣列
package oo.day02;
//引用型別陣列
public
class refarraydemo ;
int arr = new
int[3];
arr[0] = new
int[2];
arr[1] = new
int[3];
arr[2] = new
int[2];
arr[1][0] = 100; //給arr中第2個元素中的第1個元素賦值為100
int as = new
int[3][4]; //3行4列
for(int i=0;i}}
}
格仔類,演示構造方法
package oo.day02;
public
class cell
cell(int n)
cell(int row,int col)
void drop()
void drop(int n)
void moveleft()
void moveleft(int n)
string getcellinfo()
}
格仔類的測試類
package oo.day02;
//格仔類的測試類
public
class celltest
//打牆+打格
public
static
void
printwall(cell cc)else
}system.out.println(); //換行}}
}
t型
package oo.day02;
//t型
public
class t
t(int row,int col)
void drop()
}void moveleft()}}
j型
package oo.day02;
//j型
public
class j
j(int row,int col)
void drop()}}
t類與j類的測試類
package oo.day02;
//t類與j類的測試類
public
class tjtest
}
OOP Unit01 物件和類(上)
1.什麼是類?什麼是物件?1 現實生活是由很多很多物件組成的 基於物件抽出了類 2 物件 真實存在的單個的個體 類 型別 類別,代表一類個體 3 類中可以包含 3.1 所有物件所共有的特徵 屬性 變數 3.2 所有物件所共有的行為 方法 4 乙個類可以建立多個物件,同一型別的物件,結構相同,資料不同...
day02 物件和方法
1.物件和方法 物件作為方法的引數。作為方法的返回值 2類的本質 是我們自定義的資料型別。物件記憶體的大小是由我們決定的 多寫幾個屬性 資料空間就大些 少些幾個屬性 空間就小一些 什麼是資料型別?是在記憶體中開闢空間的模版 3 物件是乙個f資料型別 作為方法的引數是完全沒有問題的 void test...
Swift之旅(四)物件和類
要定義乙個類,只要在 class 後面加上類名即可。在類中定義屬性的寫法與定義常量和變數一樣,只不過它是在類的範圍裡。同樣,方法的定義和函式定義是一樣的寫法。class shape 試一試 用 let 增加乙個常量屬性,再加乙個有乙個引數的方法。要建立類的例項,只需在類名後加上括號就可以了。用句點來...