---------Python基础编程---------

Author : AI菌


 

【内容讲解】  

一、定义静态方法的步骤:
1.在方法定义的那一行的上面,使用@staticmethod装饰器
标识下面的方法是静态方法
2.方法的第一个形参,既不是self也不是cls.

二、特点:
在方法中不能访问实例属性和实例方法了,因为在它里面得不到self
通常在这个方法中不访问实例属性和实例方法,也不访问类属性和类方法.

三、访问方式:
1.实例对象.类方法名(实参1,实参2,...)
2.类对象.类方法名(实参1,实参2,...)(推荐的方式)

四、在什么时候定义静态方法?
当在这个方法中既不访问实例属性、实例方法,也不访问类属性、类方法时.
一般工具类中的方法,定义为静态方法

 

【代码演示】

"""
   一、定义静态方法的步骤:
        1.在方法定义的那一行的上面,使用@staticmethod装饰器
          标识下面的方法是静态方法
       2.方法的第一个形参,既不是self也不是cls.

   二、特点:
       在方法中不能访问实例属性和实例方法了,因为在它里面得不到self
       通常在这个方法中不访问实例属性和实例方法,也不访问类属性和类方法.

   三、访问方式:
        1.实例对象.类方法名(实参1,实参2,...)
        2.类对象.类方法名(实参1,实参2,...)(推荐的方式)

   四、在什么时候定义静态方法?
       当在这个方法中既不访问实例属性、实例方法,也不访问类属性、类方法时.
       一般工具类中的方法,定义为静态方法
"""


class EncodeUtils:
    @staticmethod
    def encode(data, charset):
        print("加密...")

    @staticmethod
    def decode(data, charset):
        print("解密...")


# 实例对象.类方法名(实参1,实参2,...)
eu = EncodeUtils()
eu.encode("robit", "UTF-8")
eu.decode("robit", "UTF-8")

# 类对象.类方法名(实参1,实参2,...)(推荐的方式)
EncodeUtils.encode("robit", "UTF-8")
EncodeUtils.decode("robit", "UTF-8")
View Code

相关文章:

  • 2021-08-16
  • 2022-01-05
  • 2021-10-18
  • 2021-11-05
  • 2021-10-03
  • 2022-12-23
  • 2022-02-20
  • 2021-09-07
猜你喜欢
  • 2021-08-29
  • 2021-10-20
  • 2021-07-11
  • 2021-06-03
  • 2021-09-19
  • 2021-07-29
  • 2022-03-03
相关资源
相似解决方案