类方法

Posted TianTianLi

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了类方法相关的知识,希望对你有一定的参考价值。

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

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


class A(object):

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

 

以上是关于类方法的主要内容,如果未能解决你的问题,请参考以下文章

Android:将片段和弹出窗口的点击事件中生成的变量传递给活动的方法

从某个类调用片段中的方法

片段类在意图的 startactivity 方法中显示错误

如何通过单击片段内的线性布局从片段类开始新活动?下面是我的代码,但这不起作用

如何在片段中使用按钮[关闭]

elasticsearch代码片段,及工具类SearchEsUtil.java