实现一个Point 类,表示直角坐标系中的一个点。Point类包括:私有数据域x和y,表示坐标;构造方法,将坐标设置为给定的参数,标默认参数值为原点;访问器方法 getx和 gety分别用于访问点的x坐标和y坐标;成员方法 distance用于计算两个点之间的距离。
时间: 2024-12-04 12:28:40 浏览: 39
在Python中,我们可以定义一个`Point`类,如下所示:
```python
class Point:
def __init__(self, x=0, y=0): # 构造方法,带默认参数表示原点
self.__x = x # 私有数据域x,使用双下划线前缀表示私有
self.__y = y # 私有数据域y,同样使用双下划线前缀
# 访问器方法,获取x坐标
def get_x(self):
return self.__x
# 访问器方法,获取y坐标
def get_y(self):
return self.__y
# 成员方法,计算两点间的欧氏距离
def distance(self, other_point):
if isinstance(other_point, Point): # 检查其他点是否也是Point对象
dx = self.__x - other_point.get_x()
dy = self.__y - other_point.get_y()
return (dx**2 + dy**2)**0.5 # 返回两点间距离
else:
raise TypeError("Distance can only be calculated between two Point objects.")
# 示例:创建两个点并计算它们的距离
p1 = Point(3, 4)
p2 = Point(6, 8)
print(p1.distance(p2))
```
在这个例子中,`Point`类有一个默认的构造方法,如果用户没有提供参数,则点的坐标设为原点(0, 0)。`get_x`和`get_y`方法作为访问器,允许我们安全地读取点的坐标。`distance`方法接受另一个`Point`对象作为参数,计算并返回两点之间的距离。
阅读全文