类的相关

类的静态属性(实例变量)

类的动态属性(类的功能方法)

类变量:先找实例变量,再找类变量。不能通过实例变量修改类变量,无实例变量有类变量是个实例私有化属性的过程。

self传入的是实例名

构造函数:def __init(self,name,age):....

析构函数:def __del__(self):....

私有属性:__life ,则不能通过实例名.__life访问

私有方法:__die() ,则不能通过实例名.__life()调用

子类重构时必须先重写父类的参数,新式类与经典类:

多继承是从左到右的继承父类(的构造函数)

# class People:  # 经典类
class People(object):  # 新式类
    def __init__(self, name, age):
        self.name = name
        self.age = age
        self.friends = []

    def eat(self):
        print('%s is eating' % self.name)

    def sleep(self):
        print('%s is sleeping ' % self.name)


class Relation(object):
    def makefriends(self, obj):
        print('%s is making friend with %s' % (self.name, obj.name))
        self.friends.append(obj.name)


class Man(People, Relation):
    # def __init__(self, name, age, money):
    #     People.__init__(self, name, age)  # 经典类
    #     Relation.__init__(self)  # 经典类
    #     super(Man, self).__init__(name, age) # 新式类
    #     self.money = money

    # def get_money(self):
    #     print('%s was born with %s money' % (self.name, self.money))
    pass


class Women(People, Relation):
    pass


# m1 = Man('chenronghua', 22, 10)
m1 = Man('chenronghu', 22)
# m1.get_money()
w1 = Women('niuhangyang', 20)

m1.makefriends(w1)
w1.name = '三炮'
print(m1.friends[0])
View Code

猜你喜欢

转载自www.cnblogs.com/Simonsun002/p/8934557.html