面向对象编程(OOP)是现代软件开发中一种常用的编程范式。它提供了一种组织代码的方式,使得代码更加模块化、可重用和易于维护。本课程将介绍OOP的基本概念,包括类、对象、封装、继承和多态等。

类和对象

在OOP中,类是创建对象的蓝图。一个类定义了对象的结构和行为。

  • :定义了对象的属性(变量)和方法(函数)。
  • 对象:是类的实例,具有类定义的属性和方法。

示例

class Car:
    def __init__(self, brand, model):
        self.brand = brand
        self.model = model

    def start_engine(self):
        return f"{self.brand} {self.model} engine started."

my_car = Car("Toyota", "Corolla")
print(my_car.start_engine())

封装

封装是将对象的属性和方法封装在一起,以隐藏对象的内部细节。

示例

class BankAccount:
    def __init__(self, account_number, balance):
        self._account_number = account_number
        self._balance = balance

    def deposit(self, amount):
        self._balance += amount

    def withdraw(self, amount):
        if amount <= self._balance:
            self._balance -= amount
        else:
            print("Insufficient funds.")

    def get_balance(self):
        return self._balance

my_account = BankAccount("123456789", 1000)
my_account.deposit(500)
print(my_account.get_balance())  # 输出: 1500

继承

继承是OOP中的一个重要特性,允许创建一个新类(子类),继承另一个类(父类)的属性和方法。

示例

class Vehicle:
    def __init__(self, brand, model):
        self.brand = brand
        self.model = model

    def start_engine(self):
        return f"{self.brand} {self.model} engine started."

class Car(Vehicle):
    def __init__(self, brand, model, color):
        super().__init__(brand, model)
        self.color = color

my_car = Car("Toyota", "Corolla", "Red")
print(my_car.start_engine())  # 输出: Toyota Corolla engine started.

多态

多态允许不同类的对象对同一消息做出响应。

示例

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

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

def make_sound(animal):
    print(animal.sound())

my_dog = Dog()
my_cat = Cat()
make_sound(my_dog)  # 输出: Woof!
make_sound(my_cat)  # 输出: Meow!

更多信息,请访问面向对象编程(OOP)教程

OOP Concept