python的类成员和实例成员

在python中定义类的属性有两种,一是类成员,二是实例成员。

  • 类成员是在类中所有方法之外定义的数据成员,属于这个类,(个人理解就是静态属性,类似于java中被static修饰的);
  • 实例成员一般是指在构造函数__init__()中定义的,定义和使用时必须以self作为前缀,属于实例对象。

他们的区别如下:

  1. 在主程序中(或类的外部),实例成员属于实例(即对象),只能通过对象名访问;
    而类成员属于类,可以通过类名或对象名访问。
  2. 在类的方法中可以调用类本身的其他方法,也可以访问类成员以及实例成员。
  3. 与很多面向对象程序设计语言不同,Python允许动态地为类和对象增加成员,这是Python动态类型特点的重要体现。

一个例子:

class Car:	
    price = 150000				#类成员
    def __init__(self,color):
        self.colour = color			#实例成员

car_1 = Car('红色')				#创建对象
print(car_1.price,Car.price,car_1.color)	#访问类成员和实例成员并输出

Car.name = 'Audi'				#增加类成员
car_1.wheelNum = 4			#增加实例成员
print(car_1.wheelNum,car_1.name,Car.name)	#访问类成员和实例成员并输出

print(Car.color)		# 报错,color属于实例成员

其他关于python类的语法参考:https://blog.csdn.net/qq_62789540/article/details/122482850

你可能感兴趣的:(python,python)