论成员属性/变量和实例属性/变量以及类属性/变量异同

21527916.jpg

1.成员属性和变量是什么?

python中属于对象本身的属性,叫做成员属性,比如说self是一个对象。name是self的一个属性,那么self.name就是self对象的一个成员属性,只属于self对象本身。

而成员变量定义在类中,在整个类中都可以被访问。成员变量随着对象的建立而建立,随着对象的消失而消失,存在于对象所在的堆内存中。成员变量有默认初始化值。

2.实例属性和变量是什么?

实例属性存在与对象中,是对象的属性,实例属性的改变,只会影响到实例;不会影响到类型中的属性
实例变量是在class的方法内的,用self修饰的变量,这就是实例变量。

3.类属性和变量是什么?

类属性就相当于专属于一个类的变量(即某些语言中的类的静态公共变量static public),使用方法是:类名称.类属性名称 实例化则是创建一个类的实例的方法,使用方法是:类名称()
而类变量也称静态变量随着类的加载而存在,随着类的消失而消失。 静态变量可以被对象调用,还可以被类名调用静态变量数据存储在方法区(共享数据区)的静态区,所以也叫对象的共享数据

4.成员属性和实例属性及类属性的异同

异:成员和实例属性都是对象而存在,而类属性依靠类而存在,成员属性和实例属性改变对类属性改变没有太大影响,而类属性的改变这可以影响成员属性和实例属性:
同:都是属于类型属性的一部分,都可以被调用,可以更改。

5.成员变量和实例变量和类属性的异同

成员变量和实例变量的区别
成员变量
1、成员变量定义在类中,在整个类中都可以被访问。
2、成员变量随着对象的建立而建立,随着对象的消失而消失,存在于对象所在的堆内存中。
3、成员变量有默认初始化值。
实例变量:
1、实例变量只定义在局部范围内,如:函数内,语句内等,只在所属的区域有效。
2、实例变量存在于栈内存中,作用的范围结束,变量空间会自动释放。
3、实例变量没有默认初始化值
在使用变量时需要遵循的原则为:就近原则
首先在局部范围找,有就使用;接着在成员位置找。

成员变量和类变量的区别:
1、两个变量的生命周期不同
成员变量随着对象的创建而存在,随着对象的回收而释放。
静态变量随着类的加载而存在,随着类的消失而消失。
2、调用方式不同
成员变量只能被对象调用。
静态变量可以被对象调用,还可以被类名调用。
3、别名不同
成员变量也称为实例变量。
静态变量也称为类变量。

好了,关于异同就讲到这,随时补充

©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容