博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
@property@classmethod@staticmethod
阅读量:4687 次
发布时间:2019-06-09

本文共 1637 字,大约阅读时间需要 5 分钟。

一、静态属性 @property将方法标记成数据属性;可以访问实例和类的属性
@classmethod标记成类的方法,不需要实例化,可以类直接调用的方法。可以访问类的属性方法,不能访问实例的
class Room:    tag=1    def __init__(self,name,owner,width,length,heigh):        self.name=name        self.owner=owner        self.width=width        self.length=length        self.heigh=heigh    @property    def cal_area(self):        # print('%s 住的 %s 总面积是%s' % (self.owner,self.name, self.width * self.length))        return  self.width * self.length    def test(self):        print('from test',self.name)    @classmethod    def tell_info(cls,x):        print(cls)        print('--》',cls.tag,x)#print('--》',Room.tag)    # def tell_info(self):    #     print('---->',self.tag)# print(Room.tag)# Room.test(1) #1.name# r1=Room('厕所','alex',100,100,100000)Room.tell_info(10)

二、静态方法:

@staticmethod 类的工具包,跟类完全独立,不能调用类的属性 可以用实例和类直接调用
class Room:    tag=1    def __init__(self,name,owner,width,length,heigh):        self.name=name        self.owner=owner        self.width=width        self.length=length        self.heigh=heigh    @property    def cal_area(self):        # print('%s 住的 %s 总面积是%s' % (self.owner,self.name, self.width * self.length))        return  self.width * self.length    @classmethod    def tell_info(cls,x):        print(cls)        print('--》',cls.tag,x)#print('--》',Room.tag)    # def tell_info(self):    #     print('---->',self.tag)    @staticmethod    def wash_body(a,b,c):        print('%s %s %s正在洗澡' %(a,b,c))    def test(x,y):        print(x,y)# Room.wash_body('alex','yuanhao','wupeiqi')print(Room.__dict__)r1=Room('厕所','alex',100,100,100000)print(r1.__dict__)

 

转载于:https://www.cnblogs.com/jiawen010/p/10064083.html

你可能感兴趣的文章
let const var的区别与作用
查看>>
计算出线在屏幕内的最长坐标
查看>>
使用svn——项目的目录布局
查看>>
Linux学习之CentOS(二十五)--Linux磁盘管理:LVM逻辑卷基本概念及LVM的工作原理
查看>>
【bzoj4310/hdu5030-跳蚤】后缀数组
查看>>
深度信任网络的快速学习算法(Hinton的论文)
查看>>
RSA System.Security.Cryptography.CryptographicException
查看>>
s的封装和信息隐蔽
查看>>
excelhttp://www.cnblogs.com/caoyuanzhanlang/p/3591904.html
查看>>
ArrayList和LinkedList和Vector源码分析
查看>>
webservice整合spring cxf
查看>>
再次编译这个应用程序应该不会有问题
查看>>
Ubuntu-tomcat7目录
查看>>
189. Rotate Array
查看>>
使用ASP.Net WebAPI构建REST服务(六)——Self-Host
查看>>
asp.net 的三种开发模式
查看>>
Android 交叉编译 IPerf3
查看>>
Android原生Gallery关于图像Orientation的问题
查看>>
Android开发之ViewPager
查看>>
【NOIP2017】列队【可持久化线段树】
查看>>