zoukankan      html  css  js  c++  java
  • 绑定方法与非绑定方法介绍

    '''
    在类内部定义的函数,分为两大类:
    一:绑定方法:绑定给谁,就应该有谁来调用,谁来调用就会把调用者当第一个参数自动传入
    绑定到对象的方法:在类内定义的没有被任何装饰器修饰的
    绑定到类的方法:在类内定义的被装饰器classsmethod修饰的方法
    二:非绑定方法:没有自动传值这么一说了,就类中定义的一个普通工具,对象和类都可以使用
    非绑定方法:不与类或者对象绑定
    '''

    # --------------- 绑定给对象用的函数如下 -------------------

    class Foo:
    def __init__(self,name):
    self.name=name

    def tell(self):
    print('名字是%s' %self.name)


    # --------------- 绑定给类用的函数如下 ------------------------
    @classmethod
    def func(cls):
    print(cls)

    # ---------------- 非绑定方法 -----------------------
    @staticmethod
    def func1(x,y):
    print(x+y)

    f1= Foo('kingforn')
    f1.tell() # 绑定对象
    Foo.func() # 绑定类

    '''
    执行结果:
    名字是kingforn
    <class '__main__.Foo'>
    '''
    print(f1.func1)
    print(Foo.func1)
    '''
    执行结果:
    <function Foo.func1 at 0x0000019E4DECFBF8>
    <function Foo.func1 at 0x0000019E4DECFBF8>
    '''
    Foo.func1(1,2)
    f1.func1(1,2)
    '''
    执行结果:
    3
    3
    '''
  • 相关阅读:
    Oracle Flashback Technologies (总)
    Oracle Flashback Technologies
    Oracle Flashback Technologies
    Oracle Flashback Technologies
    Oracle Flashback Technologies
    CDB中plug PDB
    PDB重命名
    Redo丢失场景和处理方法
    mkisofs简单定制linux iso
    zabbix 监控tomcat实例
  • 原文地址:https://www.cnblogs.com/kingforn/p/11343733.html
Copyright © 2011-2022 走看看