第1篇:面向对象编程思想与三大特性概述

张开发
2026/4/19 18:40:11 15 分钟阅读

分享文章

第1篇:面向对象编程思想与三大特性概述
为什么需要面向对象编程早期编程以面向过程为主数据与操作分离。随着程序规模扩大如图书管理系统会出现以下问题数据书名、作者、借出状态和操作借书、还书、打印信息分散功能修改需改动多处函数易出错代码复用困难新需求常导致大量复制粘贴面向对象编程OOP将数据和行为封装在对象中使程序更贴近现实世界认知。类与对象的基本概念类是蓝图对象是具体实例。例如classDog:def__init__(self,name):self.namenamedefbark(self):print(f{self.name}is barking!)my_dogDog(旺财)# 创建对象my_dog.bark()# 输出旺财 is barking!class Dog: 定义类__init__: 构造器初始化实例属性self: 指向当前实例面向对象的三大核心特性封装、继承、多态构成OOP基石。封装将数据属性和操作方法捆绑隐藏内部细节。外部仅通过公开接口交互。classBankAccount:def__init__(self,owner,balance):self.ownerowner self.__balancebalance# 私有属性defdeposit(self,amount):ifamount0:self.__balanceamountdefget_balance(self):returnself.__balance用户只需调用deposit和get_balance无需了解__balance实现细节。继承子类获取父类属性和方法可扩展或重写表达is-a关系。classAnimal:defspeak(self):print(动物发出声音)classCat(Animal):defspeak(self):# 重写print(喵喵)classDog(Animal):passCat和Dog继承AnimalCat重写speak方法。多态同一接口表现不同行为。Python通过鸭子类型实现动态多态defmake_sound(animal):animal.speak()make_sound(Cat())# 喵喵make_sound(Dog())# 动物发出声音Python中OOP的独特之处一切皆对象类、函数、模块动态性运行时添加属性/方法鸭子类型不强制继承接口多重继承子类可有多个父类魔法方法__xxx__支持内置操作本系列内容安排共10篇逐步深入OOP思想与三大特性概览类与对象属性、方法、构造器详解封装实战公有/私有、property、描述符继承基础单继承、super()、方法重写多重继承与MRO、Mixins设计模式多态鸭子类型与运算符重载抽象基类ABC与接口设计特殊方法上下文管理器、迭代器数据类dataclass与枚举Enum总结与最佳实践小结面向对象编程通过封装、继承、多态解决大型软件复杂性。Python的OOP实现兼具经典与灵活性需理解核心思想并实践。思考题实现Student类包含姓名、学号、成绩列表提供计算平均分的方法。

更多文章