Python 面向对象编程入门:类与对象

什么是面向对象编程?

面向对象编程(OOP)是一种以对象为核心的编程思想。在Python中,万物皆对象。

定义类

class Dog:
    species = '犬科'
    
    def __init__(self, name, age):
        self.name = name
        self.age = age
    
    def bark(self):
        return f'{self.name} 在汪汪叫!'
    
    def info(self):
        return f'我是一只{self.age}岁的{self.name}'

创建对象

my_dog = Dog('旺财', 3)

print(my_dog.name)       # 旺财
print(my_dog.age)        # 3
print(my_dog.bark())     # 旺财 在汪汪叫!
print(my_dog.info())     # 我是一只3岁的旺财

继承

class Animal:
    def __init__(self, name):
        self.name = name
    def speak(self):
        return '动物在叫'

class Cat(Animal):
    def speak(self):
        return f'{self.name} 在喵喵叫'

class Dog(Animal):
    def speak(self):
        return f'{self.name} 在汪汪叫'

cat = Cat('小花')
dog = Dog('旺财')
print(cat.speak())  # 小花 在喵喵叫
print(dog.speak())  # 旺财 在汪汪叫

封装

class BankAccount:
    def __init__(self, balance):
        self.__balance = balance  # 私有属性
    
    def deposit(self, amount):
        if amount > 0:
            self.__balance += amount
            return f'存款成功,余额: {self.__balance}'
        return '存款金额无效'
    
    def get_balance(self):
        return self.__balance

类方法与静态方法

class MathUtil:
    @staticmethod
    def is_even(num):
        return num % 2 == 0

print(MathUtil.is_even(10))  # True

总结

OOP让代码更结构化、可复用、易维护。学好类与对象,是进阶Python开发者的必经之路。