天天看點

類和對象

構造方法

  • 類建立對象時,需要使用構造方法完成對象的初始化工作
  • 構造方法的名稱必須與類名相同
  • 構造方法沒有任何傳回資料類型
  • 如果類定義中顯式地給出了構造方法,系統就不會再提供預設的構造方法。
  • 一個類中可以有若幹個構造方法(名稱相同),但是構造方法的參數必須不同
  • 如果類中沒有構造方法,系統為類定義一個預設的構造方法,該構造方法沒有參數,類體為空

對象的建立

對象的聲明:類的名字 對象名字;

例如:Circle cir 此時cir是一個空對象,它不能通路成員變量和成員方法

建立對象:對象名=new 構造方法名(參數清單)

cir =new Circle();

cir =new Circle(666);

也可以把聲明對象和建立對象合在一起進行

Circle cir= new Circle(666);

對象的使用

通過使用運算符“.”,對象可以實作對自己的成員變量和成員方法的通路

• 對象引用(名).成員變量

• 對象引用(名).成員方法

成員變量

💗執行個體變量

1.不用關鍵字static修飾

2.一個類中不同對象的執行個體變量将被配置設定不同的存儲空間

3.隻能通過對象通路執行個體變量

💗靜态變量(類變量)

1.用關鍵字static修飾

2.一個類中所有對象的某個靜态變量被配置設定同一個記憶體,所有對象共享這個靜态變量

3.可以通過類名通路靜态變量,也可以通過某個對象通路靜态變量

💗final成員變量

1.如果一個成員變量修飾為final,就是常量(常量的名字一般大寫)

2.如果final變量是簡單類型,則其值不能發生變化

3.如果final變量是複合類型,則其指向對象的引用不能發生變化

成員方法

💗構造方法

1.供類建立對象時使用,給出類所建立的對象的初始狀态

2.對象不可以調用構造方法

💗一般方法

1.方法聲明和方法體

方法類型 方法名(參數清單)   //方法聲明
{
 方法體的内容        //方法體
}      

2.執行個體方法和類方法

執行個體方法:方法聲明中不用static修飾,必須通過對象來調用

類方法(靜态方法):方法聲明中用static修飾,可以通過類名調用

3.參數傳值

♛基本資料類型參數的傳值

實參和形參占有不同的記憶體空間,形參的改變不影響實參

實參的級别要低于形參的級别

♛引用類型參數的傳值

引用類型資料包括對象、數組以及接口和泛型等

實參和形參指向共同的記憶體

改變形參引用的實體,會導緻實參引用的實體發生同樣的變化

方法過載

方法過載定義:方法過載是多态性的一種,是指一個類中可以有多個方法具有相同的名字,但是,參數數量不同或者參數類型不同

-*方法的類型和參數的名字不參與比較

this關鍵字

♛this可以出現在執行個體方法和構造方法中,但是不可以出現在類方法中。

① 在構造方法中使用this:代表使用該構造方法所建立的對象

② 在執行個體方法中使用this:代表使用該方法的目前對象,this可以省略

③ 使用this區分成員變量和局部變量 (在這裡,局部變量是指在成員方法的參數清單或者在方法體中定義的變量)

(1)如果成員變量和局部變量名稱相同,則成員變量被隐藏,即成員變量在方法内暫時失效

(2)如果想在方法中使用成員變量,對于執行個體方法,應使用“this.成員變量”,對于類方法,應使用“類名.成員變量”

(3)this不能省略

繼續閱讀