面向对象编程(OOP)是 Python 中一个非常重要的概念。它允许开发者以更接近现实世界的方式构建程序,通过创建类和对象来模拟现实世界中的实体和它们的行为。

类和对象

在 Python 中,类是创建对象的蓝图。对象是类的实例。

class Dog:
    def __init__(self, name, age):
        self.name = name
        self.age = age

    def bark(self):
        return f"{self.name} says: Woof!"

# 创建一个 Dog 对象
my_dog = Dog("Buddy", 5)
print(my_dog.bark())  # 输出: Buddy says: Woof!

继承

继承是 OOP 中的另一个重要概念。它允许一个类继承另一个类的属性和方法。

class Puppy(Dog):
    def __init__(self, name, age, color):
        super().__init__(name, age)
        self.color = color

    def play(self):
        return f"{self.name} is playing with a ball!"

# 创建一个 Puppy 对象
puppy = Puppy("Max", 2, "brown")
print(puppy.play())  # 输出: Max is playing with a ball!

封装

封装是 OOP 中的一个原则,它将数据隐藏在对象内部,并提供公共接口来访问和修改这些数据。

class Car:
    def __init__(self, make, model, year):
        self._make = make
        self._model = model
        self._year = year

    def get_make(self):
        return self._make

    def set_make(self, make):
        self._make = make

    def get_model(self):
        return self._model

    def set_model(self, model):
        self._model = model

    def get_year(self):
        return self._year

    def set_year(self, year):
        self._year = year

# 创建一个 Car 对象
my_car = Car("Toyota", "Corolla", 2020)
print(my_car.get_make())  # 输出: Toyota

多态

多态是指同一个操作或函数在不同对象上有不同的解释和执行方式。

class Animal:
    def sound(self):
        pass

class Dog(Animal):
    def sound(self):
        return "Woof!"

class Cat(Animal):
    def sound(self):
        return "Meow!"

# 创建 Dog 和 Cat 对象
dog = Dog()
cat = Cat()

# 调用 sound 方法
print(dog.sound())  # 输出: Woof!
print(cat.sound())  # 输出: Meow!

更多关于 Python 面向对象编程的内容,请访问我们的 Python 教程

图片展示

Python 面向对象编程