python学习笔记——类的继承
来源:互联网 发布:windows git 自动更新 编辑:程序博客网 时间:2024/05/18 22:11
在上一篇博客中介绍了python中的类和对象,详细请见http://blog.csdn.net/m0_37324740/article/details/76144902,python提供了类的继承机制,解决软件重用问题。
其格式为:
class 子类名(基类名1,基类名2...):
定义子类新特性
example 1
#导入已经定义的Dog类class Dog: def setname(self,name): self.name = name def setcolor(self,color): self.color = color def bark(self): print("wang!wang!I am" + self.name + "!") #定义GuideDog类class GuideDog(Dog): #继承基类Dog类 #定义子类自己的__init__()方法 def __init__(self,name): Dog.setname(self,name) #调用基类的setname()方法 #定义子类自己的guide()方法 def guide(self): print("我正在引导我的主人!")#创建一导盲狗对象gDog1gDog1 = GuideDog("忠诚卫士")gDog1.bark() #调用继承的bark()方法gDog1.guide() #调用自己的guide()方法运行结果:
wang!wang!I am忠诚卫士!我正在引导我的主人!
example 1中的基类没有采用__init__方法,如果采用__init__方法,这继承时分两种情况:
example 2
#定义基类Dog类class Dog: #使用__init__方法 def __init__(self,name): self.name = name def bark(self): print("wang!wang!I am" + self.name + "!") #定义GuideDog类class GuideDog(Dog): #定义子类自己的guide()方法 def guide(self): print("我正在引导我的主人!")#创建一导盲狗对象gDog1gDog1 = GuideDog("忠诚卫士")gDog1.bark() gDog1.guide()
运行结果:
wang!wang!I am忠诚卫士!我正在引导我的主人!example 2 中的GuideDog的初始化与基类的__init__()方法相同,故无需重新定义,直接使用即可。
example 3
#定义基类Dog类class Dog: #使用__init__方法 def __init__(self,name): self.name = name def bark(self): print("wang!wang!I am" + self.name + "!") #定义GuideDog类class GuideDog(Dog): #定义自己的__init__()方法 def __init__(self,name,year): self.workyear = year #增加新属性workyear Dog.__init__(self,name) #显式调用基类的__init__()方法 #定义子类自己的guide()方法 def guide(self): print("我正在引导我的主人!") print("我有 %d 年的工作经历!"%self.workyear)#创建一导盲狗对象gDog1gDog1 = GuideDog("忠诚卫士",3)gDog1.bark() gDog1.guide()运行结果:
wang!wang!I am忠诚卫士!我正在引导我的主人!我有 3 年的工作经历!
example 3 中子类的GuideDog在基类的Dog的初始化基础上增加了新属性(woekyear属性),故在定义自己的__init__()方法时,需要显式调用基类的__init__()方法
阅读全文
0 0
- python学习笔记——类的继承
- 【Python】Python学习笔记(类的继承)
- Python学习笔记(11):类的继承
- python学习笔记--继承
- Python学习笔记2:类的定义和继承
- Python笔记——类与继承
- 【Python】学习笔记——-7.3、继承和多态
- 《python》学习笔记(Day5),继承类
- python学习——super()方法实现类的继承
- Q48:不能被继承的类 ——学习笔记
- 类的继承学习笔记
- 【学习笔记】类的继承
- 类的继承--学习笔记
- 【学习笔记】类的继承
- python学习笔记——旧类与新类继承中的构造函数
- python学习笔记(继承)
- python学习笔记 多重继承
- python进阶学习笔记(四)——python中访问限制、创建类属性、定义实例方法、定义类方法、类的继承
- The Famous Clock
- ArcGISServer 10.1 动态图层
- Prototype功能预览七:一个注解分离日志及事件的发送于处理逻辑
- java开发过程中总结的细节经验
- css样式命名参考
- python学习笔记——类的继承
- Git命令使用宝典教程
- 有关FPGA硬件加速平台资料
- POJ3021
- 序列化和反序列化
- 90. Subsets II 子集列举
- Vue.js常用的语法(一)
- codeforces 527A Playing with Paper
- PDF转CAD的技巧以及转换后的编辑方法