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本身不接受任何参数,从而引发异常

    三:实例方法

  • 相关阅读:
    Thread与Handler
    开始机顶盒的生涯
    解决布局被键盘顶的难题
    自动滚动的Textview
    2-解决粘包问题
    1-socket编程
    zipfile模块
    subprocess模块
    day31-异常处理
    collections模块
  • 原文地址:https://www.cnblogs.com/wuchangblog/p/12920169.html
Copyright © 2011-2022 走看看