Python面向对象2
二,面向对象静态属性,类方法,静态方法
静态属性:
1 #Author : Kelvin 2 #Date : 2019/1/15 11:29 3 4 class Peple: 5 government="opo" 6 def __init__(self,name,age,gender): 7 self.name=name 8 self.age=age 9 self.gender=gender 10 11 @property 12 def eat(self): 13 return "%s 正在吃。。。"%(self.name) 14 15 p=Peple("kelvin",20,"male") 16 print(p.eat)
静态属性在调用方法时,不需要加括号,直接使用 对象.函数名 调用
类方法:
1 #Author : Kelvin 2 #Date : 2019/1/15 11:35 3 4 class Peple: 5 government="opo" 6 def __init__(self,name,age,gender): 7 self.name=name 8 self.age=age 9 self.gender=gender 10 def eat(self,food): 11 print("%s 正在吃 %s"%(self.name,food)) 12 13 @classmethod 14 def run(cls): #使用类方法函数参数为类本身 15 print(cls) 16 print(cls.government) 17 18 Peple.run() #直接使用 类名.类方法 python默认会将调用类作为参数传递到给函数 等价于 Peple.run(Peple)
静态方法:
1 #Author : Kelvin 2 #Date : 2019/1/15 11:35 3 4 #静态方法只是名义上归属于类管理,不使用类变量和实例变量,是类的工具包 5 class Peple: 6 government="opo" 7 def __init__(self,name,age,gender): 8 self.name=name 9 self.age=age 10 self.gender=gender 11 def eat(self,food): 12 print("%s 正在吃 %s"%(self.name,food)) 13 14 @staticmethod 15 def run(x,y): #使用类方法函数参数为类本身 16 print("静态方法:",x,y) 17 18 19 Peple.run("kelvin","nice") #直接使用 类名.静态方法 20 21 p=Peple("kelvin",20,"male") 22 p.run("kelvin","run") # 对象.静态方法 调用 23 24 print(Peple.__dict__) #所有方法在类中保存,对象使用时从类中调用 25 print(p.__dict__) #属性值在对象中保存一份
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· 从 HTTP 原因短语缺失研究 HTTP/2 和 HTTP/3 的设计差异
· AI与.NET技术实操系列:向量存储与相似性搜索在 .NET 中的实现
· 基于Microsoft.Extensions.AI核心库实现RAG应用
· Linux系列:如何用heaptrack跟踪.NET程序的非托管内存泄露
· 开发者必知的日志记录最佳实践
· TypeScript + Deepseek 打造卜卦网站:技术与玄学的结合
· Manus的开源复刻OpenManus初探
· AI 智能体引爆开源社区「GitHub 热点速览」
· 从HTTP原因短语缺失研究HTTP/2和HTTP/3的设计差异
· 三行代码完成国际化适配,妙~啊~