天天看点

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出来的,位于堆内存,类的每个成员变量在不同的对象都有不同的值(除了静态变量)而方法只有一份,对象使用方法的时候方法才被压入栈,方法不使用则不占用内存。