zoukankan      html  css  js  c++  java
  • 类方法使用

    类方法,不和实例捆绑,只供类使用

    cls代表类,可以访问类的数据和函数属性,不能访问实例的数据属性。

    class xx:    
        tag=1
        @classmethod
        def aa(cls):
            print(cls.tag)
    xx.aa()
    

    类的静态属性

    将函数定义成数据属性,可以访问对象的数据属性,也可以访问类的函数和数据属性

    class xx:
        @property
        def a(x):
            return x*3
    
    a = xx()
    x.a    #不加括号
    
    

    类静态方法:名义上归属类管理,不能使用类变量和实例变量,是类的工具包

    实例只有数据属性,函数属性都从类中调用。

    class xx:
        @staticmethod
        def abc(a,b,c):
            print(a,b,c)
    xx.abc(a,b,c)    不实例化,通过类方法进行使用
    
    

    子类调用父类的方法,使用super方法

    class Vehicle:
        Country = 'China'
        def __init__(self,name,speed,load,power):
            self.name = name
            self.speed = speed
            self.load = load
            self.power = power
        def run(self):
            print("go go")
    
    class Subway(Vehicle):
        def __init__(self,name,speed,load,power,line):
            super().__init__(name,speed,load,power)  # 同super(Subway,self).__init__(name,speed,load,power)
            self.line = line
        def show_info(self):
            print(self.name,self.speed,self.line)
    
    
    line1 = Subway('一号线',200,'on','electricity','1haoxian')
    line1.show_info()
    
  • 相关阅读:
    LeetCode 79. 单词搜索
    LeetCode 1143. 最长公共子序列
    LeetCode 55. 跳跃游戏
    LeetCode 48. 旋转图像
    LeetCode 93. 复原 IP 地址
    LeetCode 456. 132模式
    LeetCode 341. 扁平化嵌套列表迭代器
    LeetCode 73. 矩阵置零
    LeetCode 47. 全排列 II
    LeetCode 46. 全排列
  • 原文地址:https://www.cnblogs.com/chrrydot/p/9819758.html
Copyright © 2011-2022 走看看