zoukankan      html  css  js  c++  java
  • ##python自学之路-面向对象##

    一:类方法

    1

    二:静态方法

    定义:指类中无需实例参与即可调用的方法(不需要self参数),在调用过程中,无需将类实例化,直接在类之后使用.号运算符调用方法。

    用法:静态方法使用@staticmethod装饰器来声明

    class ClassA(object):
    
        @staticmethod
        def func_a():
            print('Hello Python')
    
    if __name__ == '__main__':
        ClassA.func_a()
        # 也可以使用实例调用,但是不会将实例作为参数传入静态方法
        ca = ClassA()
        ca.func_a()
    

    在Python 3中,如果一个类的方法不需要self参数,不再需要声明为静态方法,但是这样的话只能通过类去调用这个方法,如果使用实例调用会引发异常

    class ClassA(object):
        def func_a():
            print('Hello Python')
    
    if __name__ == '__main__':
        ClassA.func_a()
        # 以下使用实例调用会引发异常
        ca = ClassA()
        ca.func_a()
    func_a() takes 0 positional arguments but 1 was given 
    # 因为func_a没有声明为静态方法,类实例在调用func_a时,会隐式地将self参数传入func_a,而func_a本身不接受任何参数,从而引发异常

    三:实例方法

  • 相关阅读:
    swing加载图片
    能有效解决问题的提问方法
    资源在线汇总
    如何赢得别人的尊重
    算法总结
    软件工程概述
    java语言基础汇总
    DEBUG技巧汇总
    web技术发展历程
    java中BufferedImage类的用法
  • 原文地址:https://www.cnblogs.com/wuchangblog/p/12920169.html
Copyright © 2011-2022 走看看