类对象
本帖最后由 luck78 于 2021-10-25 15:14 编辑class Animal():
def __init__(self,name):
self.name = name
def greet(self):
print('Hello, I am an %s.' % self.name)
class Dog(Animal):
def greet(self):
print('Wangwang... I am an %s.'% self.name)
def run(self):
print('I am running')
class Cat(Animal):
def greet(self):
print(f"MiaoMiao... I am {self.name}")
def hello(animal):
animal.greet()
请问为什么16行小写animal 也可以运作
可是父类classAnimal是大写 第16行是函数定义,不是类定义,括号中的animal是函数的形参(普通变量),不是类的名称。 class Animal():
def __init__(self,name):
self.name = name
def greet(self):
print('Hello, I am an %s.' % self.name)
class Dog(Animal):
def greet(self):
print('Wangwang... I am an %s.'% self.name)
def run(self):
print('I am running')
class Cat(Animal):
def greet(self):
print(f"MiaoMiao... I am {self.name}")
def hello(animal): # 这里的 animal 只是参数
animal.greet()
hello(Animal("小白")) # 参数就是 Animal 类打印:Hello, I am an 小白.
页:
[1]