小甲鱼Python学习笔记

核心概念

  • 定义:被双下横线包围的特殊方法
  • 特性:适当时候自动调用
  • 作用:体现面向对象Python的强大

__init__方法(构造方法)

  • 调用时机:类实例化对象时(非第一个被调用)
  • 重写原因:满足实例化传参需求(如矩形类长和宽)
  • 注意事项:返回值必须是None,否则报TypeError
  • 实例:矩形类(长、宽参数+周长/面积计算方法)

__new__方法

  • 调用时机:实例化时第一个被调用,早于__init__
  • 参数特点:第一个参数是class而非self,后续参数传给__init__
  • 返回值:必须返回一个实例对象
  • 重写场景:继承不可变类型(如字符串)需修改时
  • 实例:CapString类(继承str,实例化自动转大写)

__del__方法(析构方法)

  • 作用:对象被销毁时自动调用
  • 调用条件:对象所有引用被删除,触发垃圾回收
  • 注意事项:del 变量≠调用__del__,仅减少引用计数
  • 实例:CDel类(打印方法调用状态,验证引用与销毁关系)