OOP Unit02 物件和類(下) 陣列

2021-08-02 10:50:20 字數 4360 閱讀 1413

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 增加乙個常量屬性,再加乙個有乙個引數的方法。要建立類的例項,只需在類名後加上括號就可以了。用句點來...