面向对象编程(OOP)是 Python 中一个非常重要的概念,它允许开发者以更符合现实世界的方式构建软件。下面我们将简要介绍 Python 中的一些面向对象编程的核心概念。

类和对象

在 OOP 中,类是创建对象的蓝图。对象则是类的实例。每个对象都有自己的属性和方法。

class Dog:
    def __init__(self, name, age):
        self.name = name
        self.age = age
    
    def bark(self):
        print(f"{self.name} says: Woof!")

my_dog = Dog("Buddy", 5)
my_dog.bark()

继承

继承是 OOP 中的一个重要特性,它允许我们创建一个类,该类继承另一个类的属性和方法。

class Puppy(Dog):
    def __init__(self, name, age, color):
        super().__init__(name, age)
        self.color = color
    
    def play(self):
        print(f"{self.name} is playing!")

puppy = Puppy("Max", 1, "brown")
puppy.play()

封装

封装是 OOP 中的另一个重要概念,它确保了对象的内部状态只能通过对象的方法进行访问。

class BankAccount:
    def __init__(self, owner, balance=0):
        self.__balance = balance  # 私有属性
    
    def deposit(self, amount):
        self.__balance += amount
    
    def get_balance(self):
        return self.__balance

多态

多态是指一个接口可以有多个实现。在 Python 中,多态通常通过继承和覆盖方法来实现。

class Animal:
    def make_sound(self):
        pass

class Dog(Animal):
    def make_sound(self):
        print("Woof!")

class Cat(Animal):
    def make_sound(self):
        print("Meow!")

dog = Dog()
cat = Cat()

dog.make_sound()  # 输出: Woof!
cat.make_sound()  # 输出: Meow!

扩展阅读

如果你对 Python 面向对象编程感兴趣,可以阅读以下文章:

Python logo