Python面向对象编程:理解继承和多态
在Python中,面向对象编程(Object-Oriented Programming, OOP)是一种编程范式,它将数据和操作数据的方法绑定在一起,形成一个独立的单元——对象。
1. 继承(Inheritance):
继承是子类(派生类)自动获得父类(基类)所有属性及方法的过程。在Python中,使用class Parent:
定义一个基类,然后在其后加上子类名进行定义。
# 定义基类
class Animal:
def __init__(self, name):
self.name = name
# 定义子类
class Dog(Animal):
def bark(self):
print(f"{self.name} is barking!")
# 创建对象并调用方法
my_dog = Dog("Max")
my_dog.bark() # 输出:Max is barking!
2. 多态(Polymorphism)**:
多态是指在同一个作用域下,同一个名称可以表示不同的类型,并且可以通过这些不同的类型调用它们的方法。
在Python中,多态主要通过以下方式实现:
- 方法重写(Overriding):子类继承父类的属性和方法后,可以在子类中重新定义相同的方法,使其在子类中具有不同的实现。
class Shape:
def draw(self):
pass
# 子类方法重写
class Circle(Shape):
def draw(self):
print("Drawing a circle...")
# 多态示例
shapes = [Circle(), Square()] # 创建不同形状的列表
for shape in shapes:
shape.draw() # 调用每个形状的方法,输出不同的结果
这就是Python中面向对象编程的继承和多态概念。
还没有评论,来说两句吧...