天天看點

javaSE學習16_面向對象

類可以看成是一類對象的模闆,對象可以看成該類的一個具體執行個體。

javaSE學習16_面向對象

類與類之間的關系

1.關聯關系

javaSE學習16_面向對象

是一種比較弱的關系,在代碼中一般表現為,一個類的方法中的參數,為另一個類的執行個體。

2.繼承關系

一般與特殊的關系,XX是一種XX。

javaSE學習16_面向對象

3.聚合關系

整體和部分,XX是XX的一部分。

javaSE學習16_面向對象

聚叢集組合差别:組合中部分與整體是密不可分的,而聚集中隊員可能屬于其他的球隊。

4.實作關系

javaSE學習16_面向對象

不同的類有對同一個方法不同的實作方式。

面向對象思維:當考慮一個事情的時候

1.考慮有哪些類

2.每個類有哪些屬性和方法

3.類和類之間的關系

引用

java語言中除了八種基本類型以外的變量類型都稱之為引用類型。java中的對象是通過引用對其操作的。

例如:

//聲明了一個String類型的引用變量a,存儲在棧記憶體中

String s;

//執行個體化String對象,存儲在堆記憶體中,并用s指向它,以後可以通過d完成對其的操作

S=new String ("Hello World");

而基本類型 ,例如 :

int a=0;

隻配置設定了一塊記憶體空間,名字叫a,值為0,存儲在棧記憶體中;

如何在記憶體中區分類和對象:

類是靜态的概念,存在代碼區。

對象是new出來的,位于堆記憶體,類的每個成員變量在不同的對象都有不同的值(除了靜态變量)而方法隻有一份,對象使用方法的時候方法才被壓入棧,方法不使用則不占用記憶體。