python中的面向对象OOP编程
1. 类的基本定义
使用 class
关键字定义类,类名通常采用驼峰命名法(首字母大写),例如 class Person:
。如果未显式继承其他类,默认基类为 object
。
2. 构造函数 __init__
- 作用:初始化实例属性,在创建对象时自动调用。
- 参数:
self
:固定为第一个参数,表示当前实例对象。- 其他参数:用于接收实例化时传入的值(如
name
,age
)。
3. 类属性与实例属性
- 类属性:直接在类中定义,所有实例共享。
- 实例属性:通过
self.属性名
在__init__
中定义,每个实例独立。
4. 类方法
- 实例方法:第一个参数必须是
self
,用于操作实例属性。
- 静态方法:使用
@staticmethod
装饰器,无需self
参数,与实例无关。
5. 实例化与参数传递
- 实例化:通过类名加括号创建对象,参数需与
__init__
方法匹配(不包括self
)。
- 访问属性/方法:使用点符号
.
,例如p.name
或p.say_hello()
。
6. 其他重要概念
- 私有属性:以双下划线
__
开头的属性为私有,外部无法直接访问(如__secret
)。 - 继承:通过在类名后括号内指定父类实现(如
class Student(Person):
)。
完整示例
# 类定义结束,下方留两个空行,不然实例化代码下会出现下划线
总结
- 类定义:
class 类名:
,可指定基类。 - 构造函数:
__init__(self, ...)
初始化实例属性。 - 方法:实例方法需以
self
为第一个参数。 - 属性:类属性共享,实例属性独立。
- 实例化:通过类名传递参数,自动调用
__init__
本文来自博客园,作者:Jaoany,转载请注明原文链接:https://www.cnblogs.com/fanglijiao/p/18729417
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· 阿里最新开源QwQ-32B,效果媲美deepseek-r1满血版,部署成本又又又降低了!
· AI编程工具终极对决:字节Trae VS Cursor,谁才是开发者新宠?
· Manus重磅发布:全球首款通用AI代理技术深度解析与实战指南
· 开源Multi-agent AI智能体框架aevatar.ai,欢迎大家贡献代码
· 被坑几百块钱后,我竟然真的恢复了删除的微信聊天记录!