形状对象示例
以下代码为 Circle 对象创建构造函数。构造函数接受一个参数(圆半径)作为输入,并将此值分配给内部属性。对象构造函数还定义了一个计算圆面积的方法。
您可以使用此构造函数创建新对象,如下所示:
定义对象后,您可以计算其面积,如下所示
现在,通过创建 Square 和 Triangle 对象构造函数来扩展示例。与 Circle 对象一样,每个新对象都有一个名为 area 的方法来计算形状的面积。
Square(height):={
.height=height;
.area=Square_area;
}
Square_area(none):=.height^2
Triangle(height,width):={
.height=height;
.width=width;
.area=Triangle_area;
}
Triangle_area(none):=1/2*.height*.width
现在您可以使用如下代码创建不同形状的列表:
最后,通过让每个对象调用自己的 area 方法来计算所有形状的总面积:
由于每个对象都有自己的 area 方法,您无需担心将每个对象与相应的 area 函数匹配。相反,每个对象都知道如何计算自己的面积。
对象让您可以将作用于数据的函数与数据本身组合在一起。这可以大大简化某些应用程序的构建和维护。
参见关于方法。