首页 > 编程语言 > 详细

##python自学之路-面向对象##

时间:2020-08-12 16:19:21      阅读:64      评论:0      收藏:0      [点我收藏+]

一:类方法

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

三:实例方法

##python自学之路-面向对象##

原文:https://www.cnblogs.com/wuchangblog/p/12920169.html

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!