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__)   #属性值在对象中保存一份
复制代码

 

posted @   佛祖让我来巡山  阅读(225)  评论(0编辑  收藏  举报
编辑推荐:
· 从 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的设计差异
· 三行代码完成国际化适配,妙~啊~

佛祖让我来巡山博客站 - 创建于 2018-08-15

开发工程师个人站,内容主要是网站开发方面的技术文章,大部分来自学习或工作,部分来源于网络,希望对大家有所帮助。

Bootstrap中文网

点击右上角即可分享
微信分享提示