一个类的成员变量可以是Java允许的任何数据类型,因此,一个类可以把某个对象作为自己的成员变量,也就是说,该对象将其他对象作为自己的组成部分。
组合和复用
如果一个对象a组合了对象b,那么对象a就可以委托对象b调用其方法,即对象a以组合的方式来复用对象b的方法。
通过组合对象来复用方法有以下特点:
(1)通过组合对象来复用方法也称“黑盒”复用,因为当前对象只能委托所包含的对象调用其方法,这样一来,当前对象所包含的对象的方法和细节(算法的细节)是一无所知的。
(2)当前对象随时可以更新所包含的对象,即对象与所包含的对象属于弱耦合关系。
Circle类创建圆对象
Circular类创建圆锥对象,Circular类将Circle类声明的对象作为自己的一个成员。
圆锥通过调用方法将某个圆的引用传递给圆锥的Circle类型的成员变量
Circle.java
package 圆锥和圆;
public class Circle {
double radius,area;
void setRadius(double r) {
radius = r;
}
double getRadius() {
return radius;
}
double getArea() {
area = 3.14*radius*radius;
return area;
}
}
Circular.java
pack