c#设计一个表示二维表面上的点的类 Point,包括表示坐标位置的 protected 类型的成员变量 x 和 y,获取和设置 x 和 y 值的 public 方法。
时间: 2024-10-19 17:07:42 浏览: 30
在 C# 中,你可以这样设计一个表示二维表面上的点的类 `Point`:
```csharp
public class Point
{
// 定义坐标位置的保护类型的成员变量
protected double x;
protected double y;
// 构造函数,用于初始化坐标值
public Point(double x = 0, double y = 0)
{
this.x = x;
this.y = y;
}
// 获取 x 的公共方法
public double getX()
{
return x;
}
// 设置 x 的公共方法,带验证防止数值异常
public void setX(double newX)
{
if (newX >= -double.MaxValue && newX <= double.MaxValue) // 验证新值是否合理
x = newX;
else
throw new ArgumentOutOfRangeException("x", "Value out of range.");
}
// 获取 y 的公共方法
public double getY()
{
return y;
}
// 设置 y 的公共方法,同样带验证
public void setY(double newY)
{
if (newY >= -double.MaxValue && newY <= double.MaxValue)
y = newY;
else
throw new ArgumentOutOfRangeException("y", "Value out of range.");
}
}
```
在这个类中,我们提供了一个默认构造函数,用于初始化坐标值,并且设置了 `getX()` 和 `getY()` 方法获取坐标,以及 `setX(double)` 和 `setY(double)` 方法设置坐标值。同时,我们在设置坐标时进行了范围检查,防止非法输入。
阅读全文