声明一个名为Person的类,里面声明name与age两个属性,定义talk()方法返回姓名和年龄信息;声明一个名为Student的类,此类继承自Person类,添加school属性,声明带三个参数的构造方法,复写talk()方法,在该方法中调用父类的talk()方法,返回姓名,年龄和学校信息;实例化子类对象s,调用talk()方法打印我是:张三,今年:18岁,我在哈佛大学上学
时间: 2024-03-26 07:38:06 浏览: 224
好的,以下是你要求的代码:
```python
class Person:
def __init__(self, name, age):
self.name = name
self.age = age
def talk(self):
return f'我是:{self.name},今年:{self.age}岁'
class Student(Person):
def __init__(self, name, age, school):
super().__init__(name, age)
self.school = school
def talk(self):
return super().talk() + f',我在{self.school}上学'
s = Student('张三', 18, '哈佛大学')
print(s.talk())
# 输出:我是:张三,今年:18岁,我在哈佛大学上学
```
以上是一个简单的Python代码,实现了你的要求。在这个例子中,我们首先定义了一个名为Person的类,它拥有两个属性name和age,还有一个talk()方法,用于返回姓名和年龄信息。然后我们定义了一个名为Student的类,它继承自Person类,并添加了一个school属性。我们还定义了一个带三个参数的构造方法,用于初始化这三个属性。最后,我们复写了talk()方法,在该方法中调用了父类的talk()方法,并返回姓名,年龄和学校信息。
最后,我们实例化了一个Student对象s,并调用它的talk()方法,打印出了你要求的信息。
阅读全文