设计一个Person抽象类,它具有名字、年龄、体重三个私有成员,具有说话、学习、显示个人信息三个抽象方法,并具有构造方法。
时间: 2023-12-25 22:03:33 浏览: 134
JAVASE.面向对象(1)
好的,这是一个符合要求的Person抽象类的代码实现:
```python
from abc import ABC, abstractmethod
class Person(ABC):
def __init__(self, name, age, weight):
self._name = name
self._age = age
self._weight = weight
@abstractmethod
def speak(self):
pass
@abstractmethod
def study(self):
pass
@abstractmethod
def show_info(self):
pass
```
这里我们使用了Python中的`abc`模块,使得`Person`类变成了一个抽象类。其中,`__init__`方法是构造方法,用于初始化`name`、`age`和`weight`三个私有成员变量。`speak`、`study`和`show_info`分别是三个抽象方法,需要在子类中进行具体实现。
阅读全文