面向对象进阶2

静态类

  • 如果类中需要非该类成员存在,则可以使用静态调用的方法@staticmethod

     案例:定义一个“三角形”类,通过传入三条边长来构造三角形,并提供计算周长和面积的方法

               

类方法

  • 类方法的第一个参数约定名为cls,它代表的是当前类相关的信息的对象
  • @classmethod:获取自身类(cls)中的属性,并且可以更改.
    classmethod 修饰符对应的函数不需要实例化,不需要 self 参数,但第一个参数需要是表示自身类的 cls 参数,可以来调用类的属性,类的方法,实例化对象等

      案例:

                 

继承

  可以在已有类的基础上创建新类,这其中的一种做法就是让一个类从另一个类那里将属性和方法直接继承下来,从而减少重复代码的编写。提供继承信息的我们称之为父类,也叫超类或基类;得到继承信息的我们称之为子类。

      案例:B类继承A类的内容

              

列表生成式

  • 优点: 计算速度快,因为一次性已经全部加载到内存中了,适合数据量不是太大的情况。
  • 缺点: 占用内存

      案例:

        

生成器

  • 优点: 节约内存空间
  • 缺点: 计算速度慢,因为要生成.

      案例:

          

装饰器

  • 装饰器 decorator或者称为包装器,是对函数的一种包装。
  • 它能使函数的功能得到扩充,而同时不用修改函数本身的代码。
  • 它能够增加函数执行前、执行后的行为,而不需对调用函数的代码做任何改变。

      案例:

           

原文地址:https://www.cnblogs.com/star6/p/11322767.html