a.创建一个tools.py文件,在文件中创建一个Animal类,name属性设置为实例属性且可传递参数,然后age属性设置为私有初始值为0,type属性设置为类属性值为狗; 设置一个实例方法eat(),打印”狗吃骨头”;b.重新创建一个demo.py文件,引入tools模块,然后定义一个Dog类,继承Animal,重写里面的eat(),在原有基础上(”狗吃骨头”), 添加打印内容“吃完骨头摇摇头...”
'''tools.py'''
class Animal:
type = "狗" #类属性
def __init__(self, name):
self.name = name #实例属性
self.__age = 0 #私有属性,不能在类外面访问
def eat(self):
print("狗吃骨头")
'''demo.py'''
from tools import *
class Dog(Animal):
def eat(self):
super().eat() #调用父类的eat方法
print("吃完骨头摇摇头……")
重写即可,在子类中定义与父类相同的方法名,可以完成覆盖