類可以看成是一類對象的模闆,對象可以看成該類的一個具體執行個體。
類與類之間的關系
1.關聯關系
是一種比較弱的關系,在代碼中一般表現為,一個類的方法中的參數,為另一個類的執行個體。
2.繼承關系
一般與特殊的關系,XX是一種XX。
3.聚合關系
整體和部分,XX是XX的一部分。
聚叢集組合差别:組合中部分與整體是密不可分的,而聚集中隊員可能屬于其他的球隊。
4.實作關系
不同的類有對同一個方法不同的實作方式。
面向對象思維:當考慮一個事情的時候
1.考慮有哪些類
2.每個類有哪些屬性和方法
3.類和類之間的關系
引用
java語言中除了八種基本類型以外的變量類型都稱之為引用類型。java中的對象是通過引用對其操作的。
例如:
//聲明了一個String類型的引用變量a,存儲在棧記憶體中
String s;
//執行個體化String對象,存儲在堆記憶體中,并用s指向它,以後可以通過d完成對其的操作
S=new String ("Hello World");
而基本類型 ,例如 :
int a=0;
隻配置設定了一塊記憶體空間,名字叫a,值為0,存儲在棧記憶體中;
如何在記憶體中區分類和對象:
類是靜态的概念,存在代碼區。
對象是new出來的,位于堆記憶體,類的每個成員變量在不同的對象都有不同的值(除了靜态變量)而方法隻有一份,對象使用方法的時候方法才被壓入棧,方法不使用則不占用記憶體。