定义一个时间类,能提供和设置由时、分、秒组成的时间,编写应用程序,要求定义时间类的构造函数和拷贝构造函数,创建时间对象,井测试构造函数和拷贝构造函数的调用并输出信息。
时间: 2024-10-07 10:06:38 浏览: 31
在Python中,我们可以定义一个名为`Time`的类,它包含三个私有属性(时、分、秒),以及相应的构造函数(包括默认构造函数和接受所有参数的版本)以及拷贝构造函数。以下是这个类的一个实现示例:
```python
class Time:
def __init__(self, hour=0, minute=0, second=0): # 默认构造函数
self.__hour = hour
self.__minute = minute
self.__second = second
def __copy__(self): # 拷贝构造函数
return Time(self.__hour, self.__minute, self.__second)
def set_time(self, hour, minute, second):
self.__hour = hour
self.__minute = minute
self.__second = second
def get_time(self):
return f"{self.__hour}:{self.__minute}:{self.__second}"
# 测试构造函数
time1 = Time() # 使用默认构造函数创建一个时间对象
print("Time1:", time1.get_time()) # 输出:00:00:00
time2 = Time(12, 30, 45) # 使用自定义参数创建另一个时间对象
print("Time2:", time2.get_time()) # 输出:12:30:45
# 测试拷贝构造函数
time_copy = time2.__copy__() # 使用拷贝构造函数复制time2
print("Copy of Time2:", time_copy.get_time()) # 输出:12:30:45
```
在这个例子中,我们首先创建了两个`Time`对象:`time1`使用默认构造函数初始化,`time2`则设置了特定的时间。然后通过拷贝构造函数创建了一个`time_copy`,它与`time2`具有相同的值。
阅读全文