python下,类对象和实例对象区别,类变量和实例变量区别

Y14


一、类对象和实例对象
简短理论:

  1. 类对象是将具有相似属性和方法的对象总结抽象为类对象,可以定义相似的一些属性和方法,不同的实例对象去引用类对象的属性和方法,能减少代码的重复率。
  2. 实例对象又称实例化对象,不是抽象而是一类对象中具体的一例对象。

比喻理解:
  我相信有的人觉得有点绕,在这里我以比喻说明,希望你能明白。首先,要明白,在python中,“万物皆对象”。个人理解:

  类对象,好比有一篮“水果”,篮子里面的水果没有重复,那么这一篮中的“水果”就属于一个类,是抽象的,就像有人对你说“给我水果”,你的第一反应一定是“什么水果?”,所以是不确定性的。

  实例对象,好比篮子里面的“苹果”,是一个具体的对象,即一个实例。我想有人对你说“给我苹果”,你应该不会想选择哪个水果吧


二、类变量和实例变量
简短理论:

  1. 类变量:可在类的所有实例之间共享的值(也就是说,它们不是单独分配给每个实例的)。
  2. 实例变量:实例化之后,每个实例单独拥有的变量。实例变量:实例化之后,每个实例单独拥有的变量。

比喻理解:
  其实,如果你理解了类对象和实例对象,在看过类变量和实例变量的理论,应该就能明白区别。

  类变量,接上面一篮水果比喻,好比是说“洗洗水果”(洗这个新加的动作就是你定义的一个类变量),你肯定是篮子里面的所有水果都会洗。也就是所有的水果都共享了“洗”这个新加的动作。即“类变量的值,实例可以共享”

  实例变量,这个简单,好比说“洗洗苹果”,这个洗的动作是有针对性的,是作用于一个苹果(实例)。即为“实例化后,每个实例单独拥有的变量”


大家需要注意,以上问题也是python中常见面试题,若需代码理解,推荐:https://www.cnblogs.com/loleina/p/5409084.html ,愿你理解。

个人小结,定有不足之处,欢迎指点。
谢谢~

猜你喜欢

转载自blog.csdn.net/qq_43317529/article/details/83038765