zoukankan      html  css  js  c++  java
  • 静态属性、类方法、静态方法

    class Room:
        tag=1
        def __init__(self,name,owner,width,length,heigh):
            self.name=name
            self.width=width
            self.owner=owner
            self.length=length
            self.heigh=heigh

     

    1、静态属性

    既可以访问类自己的属性也可以访问实例自己的属性

        @property
        def cal_area(self):
            # print('%s 住的 %s 总面积是 %s'%(self.owner,self.name,self.width*self.length))
            return self.width*self.length
    r1=Room('厕所','alex',100,100,10000)
    #像类一样访问自己的属性,所调用的函数不用加()
    print(r1.cal_area)

    2、类方法

    访问不到实例的属性,主要是给类用的

        @classmethod#(给类用的)
        def tell_info(cls,x):#cls参数接收的是类名,类名自动传入第一个参数
            print(cls)
            print('---->',cls.tag,x)#print('---->',Room.tag)
        # def tell_info(self):
        #     print('----->',self.tag)
    Room.tell_info(10)

    3、静态方法

    不能访问类属性和实例属性,只是类的工具包

        @staticmethod
        def wash_body(a,b,c):
            print('%s %s %s正在洗澡'%(a,b,c))
    
    Room.wash_body('alex','yuanhao','wupeiqi')
    
    r1=Room('公共厕所','yuanhao',1,1,10000)#实例(对象)只有数据属性没有函数属性(用于调类的函数属性)
    r1.wash_body('alex','yuanhao','wupeiqi')
  • 相关阅读:
    鞍点计算
    hdu-2546 饭卡 01背包
    判断2的个数
    1959: 图案打印
    1913: 成绩评估
    1908: 蟠桃记
    采药问题 01背包
    JAVA反射机制_获取Class中的构造函数
    JAVA反射机制_获取字节码文件对象
    tcp饭卡上两地分居克里斯丁
  • 原文地址:https://www.cnblogs.com/happyfei/p/9581268.html
Copyright © 2011-2022 走看看