码迷,mamicode.com
首页 > 编程语言 > 详细

第49天python学习静态属性 静态方法

时间:2019-10-10 00:28:16      阅读:32      评论:0      收藏:0      [点我收藏+]

标签:调用   test   prope   tag   eth   idt   room   property   针对   

#静态属性:就是数据属性
#定义个房间类
# class Room:
# def __init__(self,name,owner,width,length,heigh):
# self.name=name
# self.owner=owner
# self.length=length
# self.width=width
# self.heigh=heigh
#
# r1=Room("房号1120","zhangshang",10,20,3)
# print("%s住的%s房子面积是%s:"%(r1.owner,r1.name,r1.width*r1.length))
# r2=Room("房号1130","老王",10,20,3)
# print("%s住的%s房子面积是%s:"%(r2.owner,r2.name,r2.width*r2.length))


#@property 定义个属性,不让调用看到使用的逻辑
# class Room:
# def __init__(self,name,owner,width,length,heigh):
# self.name=name
# self.owner=owner
# self.length=length
# self.width=width
# self.heigh=heigh
# @property#定义个属性,不让调用看到使用的逻辑
# def mianjie(self):
# return self. width*self.length
#
# r1=Room("房号1120","zhangshang",10,20,3)
# r2=Room("房号1130","老王",10,20,3)
# print(r1.mianjie)#因为使用了property所有看上去像调用类属性,结果:200
# print(r2.mianjie)#因为使用了property所有看上去像调用类属性,结果:200
# print(r1.name)#调用类的属性,结果;房号1120
# print(r2.name)#调用类的属性,结果;房号1130


#类来调用自己的方法时使用 @classmethod——————针对恩赐
# class Room:
# tag=1
# def __init__(self,name,owner,width,length,heigh):
# self.name=name
# self.owner=owner
# self.length=length
# self.width=width
# self.heigh=heigh
#
# @classmethod#使用classmethod能调用自己的类
# def tell(cls):
# print(cls)
# print("———》",cls.tag)
#
# Room.tell()#调用自己的类,结果:———》 1


# 静态方法
#@staticmethod 当在类下应用staticmethod时候,在下面定义一个函数时,不会出现self 和 cls,静态方法只是名义上的归属管理,不能使用类变量和实例变量,石磊的工具包
class Room:
tag=1
def __init__(self,name,owner,width,length,heigh):
self.name=name
self.owner=owner
self.length=length
self.width=width
self.heigh=heigh

@property
def mianjie(self):
return self. width*self.length

@classmethod
def tell(cls):
print(cls)
print("———》",cls.tag)

@staticmethod#当在类下应用staticmethod时候,在下面定义一个函数时,不会出现self 和 cls,静态方法只是名义上的归属管理,不能使用类变量和实例变量,石磊的工具包
def test(a,b):
print("%s %s 正在吃饭"%(a,b))

Room.test("张三","老王")#结果:张三 老王 正在吃饭

第49天python学习静态属性 静态方法

标签:调用   test   prope   tag   eth   idt   room   property   针对   

原文地址:https://www.cnblogs.com/jianchixuexu/p/11645051.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有 京ICP备13008772号-2
迷上了代码!