码迷,mamicode.com
首页 > 其他好文 > 详细

class_static method 和classmethod

时间:2019-10-05 01:00:29      阅读:104      评论:0      收藏:0      [点我收藏+]

标签:dem   com   bsp   推荐   key   print   面向   ini   word   

classmethod

当一个一方法只涉及到静态属性的时候,就应该使用classmethod。

它可以将一个方法变成一个类中的方法。这个方法就可以直接被类调用,而不需要依托于对象。

class Classmethod_Demo():
    role = dog

    @classmethod#把下面的fuc方法变为了类的方法。
    def func(cls):
        print(cls.role)


Classmethod_Demo.func()

staticmethod

在完全面向对象的程序中,如果一个函数即和对象也会函数没有关系。就可以使用staticmethod将这个函数变成一个静态方法。

class login:
    def __init__(self,name,password):
        self.name = name
        self.key = password
    def push(self):
        pass
    @staticmethod
    def get():
        name = input("请输入名字")
        password = input("请输入密码")
        login(name,password)
login.get()

技术图片

 

类方法和静态方法都是类调用的。

但是对象也是可以调用类方法和静态方法。但是一般情况下,推荐使用类方法。

类方法 有一个默认参数 cls。代表这个类 cls

静态方法没有默认的参数。

 

class_static method 和classmethod

标签:dem   com   bsp   推荐   key   print   面向   ini   word   

原文地址:https://www.cnblogs.com/zly9527/p/11623573.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!