zoukankan      html  css  js  c++  java
  • python

    类的方法分为:普通方法、 静态方法和类方法

     调用方式特征
    普通方法 由对象去调用执行,属于类 至少一个self,对象调用
    静态方法 属于类,但通过类来调用,不依赖于任何对象,方法内部不需要对象封装的值时,可使用静态方法 任意参数,没有self,上面添加@staticmethod,类似装饰器的东东
    类方法 静态方法的一种特殊形式,由类调用 至少一个cls参数,上面添加classmethod

    一、普通方法:

    由对象去调用执行(方法属于类)

    1.创建方法

    class Province:
        country = "中国"
    
        def __init__(self,name):
            self.name = name
    
        def show(self):   #普通方法,由对象去调用执行(方法属于类)
            print(self.name)

    2.访问普通方法:

    普通方法的访问需要使用对象 才能访问

    obj = Province("河北")
    obj.show()

    Out:

    河北

    二、静态方法:

    1.创建静态方法

    添加@staticmethod  并且 def f1(): 括号里面没有self   ,这样就创建了静态方法

    class Province:
        country = "中国"
    
        def __init__(self,name):
            self.name = name
    
        @staticmethod
        def f1(arg1,arg2):
            #静态方法,由类调用执行
            print(arg1,arg2)

     2.访问静态方法:

    静态方法的访问直接使用类就可以访问,不需要使用对象

    #访问静态方法
    Province.f1(11,22)

    out:

    11 22

    三、类方法

    类方法:

    1.创建类方法:

    添加@classmethod  后创建的就是类方法,cls 就是类的名称

    class Province:
        country = "中国"
    
        def __init__(self,name):
            self.name = name
    
        
        @classmethod
        def f2(cls):    #cls 是类名
            print(cls)

    2.方法类方法:

    直接使用类名和方法名称即可

    Province.f2()

    out:

    <class '__main__.Province'>

  • 相关阅读:
    [翻译] 为什么Uber的数据库从Postgres 切换到 MySql
    Salesforce.com Object Query Language (SOQL) 示例
    SalesForce 入门
    jeasyui datagrid 使用记
    2- 计算机的组成以及VMware使用
    1.计算机三大操作系统介绍
    01- Java概述
    01- Sublime的工具安装以及使用
    01- web测试快速入门
    02- Java搭建环境搭建
  • 原文地址:https://www.cnblogs.com/pangguoping/p/5617542.html
Copyright © 2011-2022 走看看