python中的类(3)-类方法/静态方法

python中的类方法与静态方法

 

 

  面相对象程序设计中,类方法和静态方法是经常用到的两个术语。

 

  逻辑上讲:类方法是只能由类名调用;静态方法可以由类名或对象名进行调用。

 

 

 

类方法:

  在python中.类方法 @classmethod 是一个函数修饰符,它表示接下来的是一个类方法,而对于平常我们见到的则叫做实例方法。

类方法的第一个参数cls,而实例方法的第一个参数是self,表示该类的一个实例。

 

class Test():
    def __init__(self,name):
        self.a = name
    @classmethod #类方法的装饰器,用于修饰这个方法
    def func(cls):#cls 代表的是class

        print(这是一个类方法)

if __name__ == __main__:

    Test.func() #类调用
    a = Test("小王")
    a.func() #类的实例进行调用

 

 

 

 

注意 :a, 类方法不仅可以通过实例化对象调用还可以通过类名称直接调用

 

      b, 不能调用构造函数(实例方法)中的属性变量

 

      c,可以调用类变量

 

静态方法:

  静态方法是类中的函数,不需要实例。静态方法主要是用来存放逻辑性的代码,主要是一些逻辑属于类,但是和类本身没有交互,

在静态方法中,不会涉及到类中的方法和属性的操作。

 

class Test():
    def __init__(self,name):
        self.a = name

    @staticmethod #装饰器,表示他是一个静态方法
    def func():
        print("这是一个静态方法")


if __name__ == __main__:

    Test.func() #类调用
    a = Test("小王")
    a.func() #类的实例进行调用

注意:

      a,静态方法中没有默认的形

       b,静态方法需要通过装饰@staticmethod修饰
       c, 静态方法不仅可以通过实例化对象调用还可以通过类名称直接调用
       d,不能调用构造函数(实例方法)中的属性变量
       e, 不可以调用类变量

 

 

 

  

python中的类(3)-类方法/静态方法

上一篇:Jquery+NProgress实现网页进度条显示


下一篇:Docker部署Springboot项目,Invalid or corrupt jarfile /app.jar