class类继承

# class People: 经典类
class People(object): #新式类
def __init__(self,name,age,n=1000):
self.name = name
self.age = age
self.n = n
print("--doens't run ")
def eat(self):
print("%s is eating..." % self.name)
def talk(self):
print("%s is talking..." % self.name)
def sleep(self):
print("%s is sleeping..." % self.name)

class Man(People):
def __init__(self,name,age,money,n=999): #重构父类初始化方法 #父类的默认参数n 可以不写;调用父类的n
#People.__init__(self,name,age) #经典类写法 和下面super这行代码的效果一样
super(Man,self).__init__(name,age) #新式类写法 #调用父类的初始化方法,默认参数n可以不写
self.n = n #如果这行不写,也就是不给Man类实例的n属性赋值,默认还是父类n的值
self.money = money #Man类实例自己的一个属性money,不是继承父类的
print("%s 一出生就有%s money" %(self.name,self.money))
def sleep(self):
People.sleep(self)
print("man is sleeping ")

m1 = Man("NiuHanYang",22,10)
print(m1.n)

猜你喜欢

转载自www.cnblogs.com/lighthouse/p/9633510.html