Python的两种继承方法
2018-01-05 11:07
387 查看
# class Animal: #经典类 class Animal(object): #新式类 def __init__(self,name): self.name = name def eat(self,foot): print('can eat',foot) class Relation(object): def make_friends(self,obj): print('%s is making friends with %s'%(self.name,obj.name)) class Dog(Animal,Relation): #如果它们都有构造函数,在继承顺序上就会先继承Animal的init构造函数 # def __init__(self,age): #这样直接就会覆盖父类的所有构造函数 # self.age = age #所以要这样 def __init__(self,name,age): # Animal.__init__(self,name) #方法一 经典类的写法 super(Dog,self).__init__(name) #方法二 这种方法比较好 新式类的写法 self.age = age def run(self): print('Dog is run soon') print('%d'%self.age) # def eat(self): #直接就将父类方法替换了 # print('dog is can eat') def eat(self,foot): Animal.eat(self,foot) #这样就可以在父类方法里面添加方法 print('The dog is can eat') class Cat(Animal): def pashu(self): print('cat can pashu %s'%self.name) dog = Dog('dog',10) # dog.eat('面包') # dog.run() cat = Cat('cat') # cat.pashu() # 下面这个就是多继承,注意,这里的cat作为一个参数传进去了 # 其实很好理解 # dog继承了Relation,因此可以多继承 dog.make_friends(cat)
相关文章推荐
- python脚本设置系统时间的两种方法
- python3 读写文件的两种小方法
- ListView的两种使用方法1.继承ListActivity2.自己定义ListView
- Python向窗口发送快捷键的两种方法
- python继承和抽象类的实现方法
- 使用Python生成源文件的两种方法
- python连接两个字符串的另外两种高效率的方法
- 【转载】JAVA中线程的两种实现方法-实现Runnable接口和继承Thread类
- 更改Ubuntu默认python版本的两种方法
- python基础----继承与派生、组合、接口与归一化设计、抽象类、子类中调用父类方法
- 飘逸的python - 两种with语句实现方法
- Python生成随机验证码的两种方法
- python中类的继承与方法重写
- python清空字典的两种方法比较
- python 读取并显示图片的两种方法
- python3中获取文件当前绝对路径的两种方法
- 2018/01/07JAVA 基础 / 接口与继承:用引用调用对象方法的两种情况讨论
- 基于python3 类的属性、方法、封装、继承实例讲解
- Python遍历文件夹的两种方法比较
- 总结python实现父类调用两种方法的不同