类的多态
1.定义
多台是指对不同类型的变量进行相同操作,根据对象*(或类)不同而表现出不同的行为。
注意:
(1)多态的方法是多态,属性没有多态。
(2)多态的存在有2个必要条件:继承,方法重写。
Python的Magic Method
在Python中所有的“__”双下划包起来的方法,都称为“魔方方法”。
作用是构造出优美的代码,将复杂的逻辑封装成简单的方法。
运算符重载:
#运算符重载
class Person:
def __init__(self,name):
self.name = name
def __add__(self, other):
if isinstance(other,Person):#判断other是否是Person对象
return "{0}--{1}".format(self.name,other.name)
else:
return "不是同类对象,不能相加"
p1 = Person("林")
p2 = Person("林四")
x = p1+p2
print(x)
特殊属性
(1)obj.__dict__ 对象的属性字典 (2)obj.__class__ 对象的所属类
(3)class.__bases__ 类的基类元组 (4)class.__mor__类的层次结构
(4)class.__subclasses__() 子类列表