Python 面向对象编程:从入门到实践

发布时间:2026/6/30 2:36:22
Python 面向对象编程:从入门到实践 在掌握了 Python 基础语法之后面向对象编程OOP是你必须掌握的重要技能。本文将带你从零开始学习 Python 的面向对象编程。一、什么是面向对象编程面向对象编程Object-Oriented ProgrammingOOP是一种编程范式它将数据和操作数据的方法组织在一起形成对象。核心概念类Class对象的蓝图或模板对象Object类的实例属性Attribute对象的数据方法Method对象的行为二、定义类和创建对象1. 基本语法1234567891011121314151617181920212223classDog:这是一个狗的类# 类属性speciesCanis familiarisdef__init__(self, name, age):构造方法创建对象时自动调用self.namename# 实例属性self.ageagedefdescription(self):描述方法returnf{self.name} 今年 {self.age} 岁defspeak(self, sound):说话方法returnf{self.name} 说: {sound}# 创建对象my_dogDog(Buddy,3)print(my_dog.description())print(my_dog.speak(汪汪汪))2. self 关键字self 代表类的实例本身必须在方法定义中作为第一个参数。三、三大特性1. 封装Encapsulation将数据和方法包装在一起隐藏内部实现细节。12345678910111213141516classBankAccount:def__init__(self, owner, balance0):self.ownerownerself.__balancebalancedefdeposit(self, amount):ifamount 0:self.__balanceamountreturnf存入 {amount} 元return存款金额必须大于0defwithdraw(self, amount):ifamount self.__balance:return余额不足self.__balance-amountreturnf取出 {amount} 元2. 继承Inheritance子类继承父类的属性和方法。123456789101112131415classAnimal:def__init__(self, name, age):self.namenameself.ageagedefspeak(self):raiseNotImplementedError(子类必须实现此方法)classCat(Animal):defspeak(self):returnf{self.name} 说: 喵喵喵classDog(Animal):defspeak(self):returnf{self.name} 说: 汪汪汪3. 多态Polymorphism123456defanimal_speak(animal):print(animal.speak())animals[Cat(咪咪,2), Dog(旺财,3)]foranimalinanimals:animal_speak(animal)四、特殊方法魔术方法1234567891011classBook:def__init__(self, title, author, pages):self.titletitleself.authorauthorself.pagespagesdef__str__(self):returnf《{self.title}》作者: {self.author}def__len__(self):returnself.pages五、类方法与静态方法123456789classMathUtils:staticmethoddefadd(x, y):returnxyclassmethoddefcreate_random(cls):importrandomreturncls(random.randint(1,100))