2019年7月22日 静态方法

静态方法

# 静态属性,被称作类的工具包,在类内部定义,和谁都不绑定,不能使用类变量和实例变量不含cls,不含self,做一些和class无关的事情;
class Studnet:
    tag=10086
    def __init__(self,name,age,genter,school):
        self.name=name
        self.age=age
        self.genter=genter
        self.school=school


    def study(self):
        print('%s 想要好好学习'%self.name)

    @classmethod #专门供类使用的方法,实例也能调用,但是不推荐
    def tell_info(cls):#cls接收的是一个类名
        print(cls)
        print('>>>>',cls.tag)


    def test(x,y):#无意义的写法
        print(x,y)

    @staticmethod # 静态属性,被称作类的工具包,在类内部定义,和谁都不绑定,不能使用类变量和实例变量不含cls,不含self,做一些和class无关的事情;
    def wash_body(a,b,c):
        print('%s,%s,%s正在洗澡'%(a,b,c))



Studnet.tell_info()#类方法会自动传递参数
Studnet.wash_body('a','b','c')
S1=Studnet('SSS',18,'MAN','QHDX')
# S1.test(1,2) #这个会报错
Studnet.test(1,2)
S1.wash_body(1,2,3) #静态属性不报错,注意

》》》

<class '__main__.Studnet'>
>>>> 10086
a,b,c正在洗澡
1 2
1,2,3正在洗澡

 

posted @ 2019-07-22 20:57  小圣庄  阅读(96)  评论(0编辑  收藏  举报