设计一个表示二维表面上圆的类 Circle,它继承自类 Point,还包括表示圆半径的protected 类型的成员变量 r、获取和设置 r 值的 public 方法、计算圆面积的 public 方法。C#
时间: 2024-10-13 22:11:54 浏览: 39
在C#中,我们可以设计一个名为Circle的类,它继承自Point类,用于表示二维空间中的圆。这里是一个简单的实现:
```csharp
public class Point // 假设Point类已经存在,包含坐标(x, y)等属性和方法
{
public double X { get; set; }
public double Y { get; set; }
}
public class Circle : Point // 继承自Point类
{
protected double r; // 定义圆的半径,为protected访问级别
// 公共方法:获取和设置半径
public double Radius
{
get { return r; }
set { r = value; } // 确保值合理,比如大于0
}
// 公共方法:计算并返回圆的面积
public double CalculateArea()
{
if (r > 0)
return Math.PI * Math.Pow(r, 2); // 使用Math.PI乘以半径的平方得到面积
else
throw new ArgumentException("Radius must be greater than zero.");
}
}
```
在这个Circle类中,我们利用了封装的原则,通过`protected`修饰的`r`成员变量保证其安全性,并提供公共方法`Radius`让外部可以安全地获取和设置半径。`CalculateArea`方法则用于计算并返回圆的面积。
阅读全文