本文共 1831 字,大约阅读时间需要 6 分钟。
在本文中,我们将介绍一个使用 Objective-C 语言实现的形状面积计算框架。该框架采用面向对象的方式,通过定义一个基类 Shape 和多个子类来实现不同形状(如圆形、矩形、三角形和正方形)的面积计算功能。
框架的核心基类是 Shape,该类定义了一个通用的面积计算接口。每个子类(如 Circle、Rectangle 等)需要实现基类中的 area 方法,以计算特定形状的面积。
@interface Shape : NSObject- (double)area; // 基类方法,子类需重写@end@implementation Shape- (double)area { // 方法在子类中重写} 以下是几个常见形状的子类实现:
圆形的面积计算公式为 π × r²,其中 r 为半径。
@interface Circle : Shape- (double)radius;- (double)area; // 重写基类方法@end@implementation Circle- (double)area { return M_PI * self.radius * self.radius;} 矩形的面积计算公式为 length × width,其中 length 为长,width 为宽。
@interface Rectangle : Shape- (double)length;- (double)width;- (double)area; // 重写基类方法@end@implementation Rectangle- (double)area { return self.length * self.width;} 三角形的面积计算公式为 (base × height) / 2,其中 base 为底边,height 为高度。
@interface Triangle : Shape- (double)base;- (double)height;- (double)area; // 重写基类方法@end@implementation Triangle- (double)area { return (self.base * self.height) / 2;} 正方形的面积计算公式为 side × side,其中 side 为边长。
@interface Square : Shape- (double)side;- (double)area; // 重写基类方法@end@implementation Square- (double)area { return self.side * self.side;} 以下是一个使用该框架计算不同形状面积的示例代码:
// 初始化各形状实例Circle *circle = [[Circle alloc] init];circle.radius = 5.0;Rectangle *rectangle = [[Rectangle alloc] init];rectangle.length = 4.0;rectangle.width = 6.0;Triangle *triangle = [[Triangle alloc] init];triangle.base = 7.0;triangle.height = 4.0;Square *square = [[Square alloc] init];square.side = 3.0;// 计算各形状面积double circleArea = [circle area]; // 输出:78.5398double rectangleArea = [rectangle area]; // 输出:24.0double triangleArea = [triangle area]; // 输出:10.0double squareArea = [square area]; // 输出:9.0
通过上述实现,我们可以轻松计算各种形状的面积。该框架的设计灵活,易于扩展,仅需为每个新形状添加一个子类即可。
转载地址:http://cdsfk.baihongyu.com/