首页 > 其他 > 详细

类方法

时间:2016-10-29 11:44:14      阅读:238      评论:0      收藏:0      [点我收藏+]

类方法与普通的成员函数和静态函数有不同之处,在接触的语言中好像也没见过这种语义,看它的定义: 
一个类方法就可以通过类或它的实例来调用的方法, 不管你是用类来调用这个方法还是类实例调用这个方法,该方法的第一个参数总是定义该方法的类对象。 
记住:方法的第一个参数都是类对象而不是实例对象. 
按照惯例,类方法的第一个形参被命名为 cls.任何时候定义类方法都不是必须的(类方法能实现的功能都可以通过定义一个普通函数来实现,只要这个函数接受一个类对象做为参数就可以了).

# 规范:自己的成员自己去访问,除了类中的方法,类中的方法用对象去访问
# 通过类去访问的有:类属性,静态方法,类方法
# 通过对象去访问的有: 对象属性,类中的方法
# 静态方法存在的意义在于不需要创建对象就可以执行该方法
# 类方法相当于一个特出的静态方法(有参数)


class A(object):

    @classmethod
    def run(cls):
        print(run,cls)
# 类方法通过类直接调用,类方法中的cls参数自动传递,传递类对象
A.run()

 

类方法

原文:http://www.cnblogs.com/liyqiang/p/6010249.html

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!