Python(十八)类方法、静态方法、普通方法

一、类方法:

class Man:
    def __init__(self):
        self.height = 170
        self.hobbys = "爱好"
    #类变量
    sex = "男"
    #类方法
    @classmethod
    def eat(cls, name, age):
        print("cls", cls)
        print("name", name)
        print("age", age)
        #调用类变量
        print(cls.sex)

if __name__ == "__main__":
    #实用类.类方法()
    Man.eat("张三", 18)
    #使用对象.类方法()
    man = Man()
    m.eat("李四", 23)

二、静态方法

class Man:
    @staticmethod
    def teststatic():
        print("静态方法")
if __name__ == "__main__":
    m = Man()
    m.teststatic()

    #类名调用
    Man.teststatic()

三、普通方法

class Man:
    def test():
        print("普通方法")
if __name__ == "__main__":
    Man.test()
    #对象不能调用普通方法,需要通过类名直接调用里面的方法
    m = Man()
    m.test()