Python可以继承多个父类,多重继承。
类支持多个对象的产生,命名空间的继承,运算符重载
1)、类产生多个实例对象
Python OOP模型中的两种对象:类对象和实例对象。
类对象提供默认的行为,是实例对象的工厂。实例对象是程序处理的实际对象:各自都有独立的命名空间。类对象来至于语句,而实例来至于调用。每次调用一个类,就会得到这个类的新实例。
a、类对象提供默认行为
b、实例对象是具体的元素
2)、类通过继承进行定制
a、类通过继承进行定制
b、类是模块内部的属性
3)、类可以截获Python运算符
常见的运算符重载方法
方法 重载 调用
__init__ 构造器方法 对象建立:X=Class()
__del__ 析构方法 对象收回
__add__ 运算符+ X+Y,X+=Y
__sub__ 运算符- X-Y,X-=Y
__or__ 运算符|(位OR) X|Y X|=Y
__repr__,__str__ 打印,转换 print X【__str__】、repr(X)、str(X)
__call__ 函数调用 X()
__getattr__ 点号运算 X.undefined
__setattr__ 属性赋值语句 X.any=Value
__getitem__ 索引运算 X[key],没有__iter__时的for循环和其他迭代器
__setitem__ 索引赋值语句 X[key]=value
__len__ 长度 len(X),真值测试
__cmp__ 比较 X==Y,X
__lt__ 特定的比较 X<Y(or else __cmp__)
__eq__ 特定的比较 X==Y(or else __cmp__)
__radd__ 左侧加法 + Noninstance + X
__iadd__ 实地(增强的)的加法 X+=Y(or else __add__)
__iter__ 迭代环境 用于循环,测试,列表,映射及其他
所有重载方法的名称前后都有两个下划线字符,以便把同类中定义的变量名区别开来。特殊方法名称和表达式或运算的映射关系,是由Python语言预先定义好的。