您現在的位置是:首頁 > 手機遊戲首頁手機遊戲

java 第五章 類和物件(核心)

簡介}示例程式碼:*手機類:類名:手機(Phone)成員變數:品牌(brand)價格(price)成員方法:打電話(call)發簡訊(sendMessage)*public class Phone {成員變數String brand

物件是類的什麼

java 第五章 類和物件(核心)

1。 類和物件

1。1 類和物件的理解【理解】

客觀存在的事物皆為物件 ,所以我們也常常說萬物皆物件。

類的理解

類是對現實生活中一類具有共同屬性和行為的事物的抽象

類是物件的資料型別,類是具有相同屬性和行為的一組物件的集合

簡單理解:類就是對現實事物的一種描述

類的組成

屬性:指事物的特徵,例如:手機事物(品牌,價格,尺寸)

行為:指事物能執行的操作,例如:手機事物(打電話,發簡訊)

類和物件的關係

類:類是對現實生活中一類具有共同屬性和行為的事物的抽象

物件:是能夠看得到摸的著的真實存在的實體

簡單理解:

類是對事物的一種描述,物件則為具體存在的事物

1。2 類的定義【應用】

類的組成是由屬性和行為兩部分組成

屬性:在類中透過成員變數來體現(類中方法外的變數)

行為:在類中透過成員方法來體現(和前面的方法相比去掉static關鍵字即可)

類的定義步驟:

①定義類

②編寫類的成員變數

③編寫類的成員方法

public class 類名 {

// 成員變數

變數1的資料型別 變數1;

變數2的資料型別 變數2;

// 成員方法

方法1;

方法2;

}

示例程式碼:

/*

手機類:

類名:

手機(Phone)

成員變數:

品牌(brand)

價格(price)

成員方法:

打電話(call)

發簡訊(sendMessage)

*/

public class Phone {

//成員變數

String brand;

int price;

//成員方法

public void call() {

System。out。println(“打電話”);

}

public void sendMessage() {

System。out。println(“發簡訊”);

}

}

1。3 物件的使用【應用】

建立物件的格式:

類名 物件名 = new 類名();

呼叫成員的格式:

物件名。成員變數

物件名。成員方法();

示例程式碼

/*

建立物件

格式:類名 物件名 = new 類名();

範例:Phone p = new Phone();

使用物件

1:使用成員變數

格式:物件名。變數名

範例:p。brand

2:使用成員方法

格式:物件名。方法名()

範例:p。call()

*/

public class PhoneDemo {

public static void main(String[] args) {

//建立物件

Phone p = new Phone();

//使用成員變數

System。out。println(p。brand);

System。out。println(p。price);

p。brand = “小米”;

p。price = 2999;

System。out。println(p。brand);

System。out。println(p。price);

//使用成員方法

p。call();

p。sendMessage();

}

}

1。4 學生物件-練習【應用】

需求:首先定義一個學生類,然後定義一個學生測試類,在學生測試類中透過物件完成成員變數和成員方法的使用

分析:

成員變數:姓名,年齡…

成員方法:學習,做作業…

示例程式碼:

class Student {

//成員變數

String name;

int age;

//成員方法

public void study() {

System。out。println(“好好學習,天天向上”);

}

public void doHomework() {

System。out。println(“鍵盤敲爛,月薪過萬”);

}

}

/*

學生測試類

*/

public class StudentDemo {

public static void main(String[] args) {

//建立物件

Student s = new Student();

//使用物件

System。out。println(s。name + “,” + s。age);

s。name = “林青霞”;

s。age = 30;

System。out。println(s。name + “,” + s。age);

s。study();

s。doHomework();

}

}

2。 物件記憶體圖

2。1 單個物件記憶體圖【理解】

成員變數使用過程

成員方法呼叫過程

2。2 多個物件記憶體圖【理解】

成員變數使用過程

成員方法呼叫過程

總結:

多個物件在堆記憶體中,都有不同的記憶體劃分,成員變數儲存在各自的記憶體區域中,成員方法多個物件共用的一份

2。3 多個物件指向相同記憶體圖【理解】

總結

當多個物件的引用指向同一個記憶體空間(變數所記錄的地址值是一樣的)

只要有任何一個物件修改了記憶體中的資料,隨後,無論使用哪一個物件進行資料獲取,都是修改後的資料。

3。 成員變數和區域性變數

3。1 成員變數和區域性變數的區別【理解】

類中位置不同:成員變數(類中方法外)區域性變數(方法內部或方法宣告上)

記憶體中位置不同:成員變數(堆記憶體)區域性變數(棧記憶體)

生命週期不同:成員變數(隨著物件的存在而存在,隨著物件的消失而消失)區域性變數(隨著方法的呼叫而存在,醉著方法的呼叫完畢而消失)

初始化值不同:成員變數(有預設初始化值)區域性變數(沒有預設初始化值,必須先定義,賦值才能使用)

Top