zoukankan      html  css  js  c++  java
  • Python-类变量,成员变量,静态变量,类方法,静态方法,实例方法,普通函数

    属性分为实例属性与类属性

    方法分为普通方法,类方法,静态方法

    一:属性:

      尽量把需要用户传入的属性作为实例属性,而把同类都一样的属性作为类属性。实例属性在每创造一个实例时都会初始化一遍,不同的实例的实例属性可能不同,不同实例的类属性都相同。从而减少内存。

      1:实例属性:

        最好在__init__(self,...)中初始化

        内部调用时都需要加上self.

        外部调用时用instancename.propertyname

      2:类属性:

        在__init__()外初始化

        在内部用classname.类属性名调用

        外部既可以用classname.类属性名又可以用instancename.类属性名来调用

      3:私有属性:

        1):单下划线_开头:只是告诉别人这是私有属性,外部依然可以访问更改

        2):双下划线__开头:外部不可通过instancename.propertyname来访问或者更改

          实际将其转化为了_classname__propertyname

    二:方法

      1:普通类方法:

        def fun_name(self,...):

          pass

        外部用实例调用

      2:静态方法:@staticmethod            

          不能访问实例属性!!!   参数不能传入self!!!

          与类相关但是不依赖类与实例的方法!!

      3:类方法:@classmethod

          不能访问实例属性!!!   参数必须传入cls!!!

          必须传入cls参数(即代表了此类对象-----区别------self代表实例对象),并且用此来调用类属性:cls.类属性名

      *静态方法与类方法都可以通过类或者实例来调用。其两个的特点都是不能够调用实例属性

  • 相关阅读:
    CSS优化,提高性能的方法有哪些?
    稀疏数组(SparseArray)(Go)
    Go
    Vue 实战-6 rest 重置表单不生效原因
    Go
    Vue 实战-5 批量导出 excel功能
    Vue 实战-4 表格展开行
    Vue 实战-3 vue 中使用watch 监听 el-input属性值
    Vue 实战-2 输入框加搜索图标
    Vue 实战-1 去掉 input [number] 默认增减箭头样式
  • 原文地址:https://www.cnblogs.com/ranjiewen/p/9213704.html
Copyright © 2011-2022 走看看