模仿PPT, 自己任意定义一个类(不能跟教程相同),要有类对象、构造函数__init__,析构函数,私有属性,读取或者设置私有属性的方法、@property属性(有读和写的功能)等
时间: 2024-05-03 19:17:55 浏览: 96
好的,我定义一个名为Person的类,它有以下属性和方法:
- 私有属性:姓名(name)、年龄(age)和性别(gender)
- 构造函数:初始化姓名、年龄和性别
- 析构函数:打印一条信息,表示该对象已经被销毁
- 读取或设置姓名、年龄和性别的方法
- @property属性:可以读取和设置姓名、年龄和性别的方法
代码如下:
```python
class Person:
def __init__(self, name: str, age: int, gender: str):
self.__name = name
self.__age = age
self.__gender = gender
def __del__(self):
print(f"{self.__name}对象已被销毁")
def get_name(self) -> str:
return self.__name
def set_name(self, name: str):
self.__name = name
def get_age(self) -> int:
return self.__age
def set_age(self, age: int):
self.__age = age
def get_gender(self) -> str:
return self.__gender
def set_gender(self, gender: str):
self.__gender = gender
@property
def name(self) -> str:
return self.__name
@name.setter
def name(self, name: str):
self.__name = name
@property
def age(self) -> int:
return self.__age
@age.setter
def age(self, age: int):
self.__age = age
@property
def gender(self) -> str:
return self.__gender
@gender.setter
def gender(self, gender: str):
self.__gender = gender
```
我们可以创建一个Person对象,然后读取或设置它的属性:
```python
person = Person("张三", 20, "男")
print(person.name) # 张三
person.name = "李四"
print(person.name) # 李四
print(person.age) # 20
person.age = 30
print(person.age) # 30
print(person.gender) # 男
person.gender = "女"
print(person.gender) # 女
```
输出结果为:
```
张三
李四
20
30
男
女
李四对象已被销毁
```
阅读全文