【Python】面向对象:类与继承简单示例
2024-10-11 07:32:59
Python 面向对象
Python 是一门面向对象的设计语言,与此对应的就是面向过程编程与函数式编程
面向对象的一个优点就是更好的增强代码的重用性。
面向过程编程可以简单的理解为:重点在步骤,将一个任务完成所需要的所有步骤罗列出来
面向对象则可以理解为:重点在对象,打个比方的话就是在人,完成一项任务需要哪些人,这些人再去负责做具体的事情,将所有人组合在一起就完成了这个任务。
我们通过封装步骤为方法,封装方法为对象,来执行任务。真实世界中的事物从来都不是单独的,每个事物都有自己的类别,而函数是真实世界的映射,对于同一类的事物,同一类事物具有某些相同的特征,我们无需每次对同一类的事物创建相同的特征,而只需要创建一个大类,在这个大类中将某些共同属性封装在一起,然后通过继承的方式去使用这些属性或者方法,对于一些特殊属性特殊方法,我们只需单独创建它们即可——一切重复性的东西都没有必要存在两份。
下面这个例子定义了一个动物的大类,它具有一些共同属性和方法,以及两个继承它的猫类和狗类,它们具有各自特殊的方法。
1 class Animal(object): # 定义父类animal
2
3 def __init__(self,name,sound): # 初始化属性 name sound
4
5 self.name = name
6 self.sound = sound
7 self.talk() # 一实例化即调用talk()方法
8
9 def talk(self): # 定义父类方法,用于打招呼
10 print("hello,i am %s,%s" % (self.name,self.sound))
11
12 class Dog(Animal): # 继承父类animal
13
14 def jump(self): # 增加子类新方法
15 print("i love jumping!")
16
17 class Cat(Animal): # 继承父类animal
18
19 def sleep(self): # 增加子类新方法
20 print("i love sleeping")
21
22
23 catt = Cat("cat","miao~miao~miao") # 实例化cat类,得到catt对象
24 catt.sleep() # 调用对象方法
25
26 dogg = Dog("dog","wang~wang~wang")
27 dogg.jump()
执行结果:
hello,i am cat,miao~miao~miao
i love sleeping
hello,i am dog,wang~wang~wang
i love jumping!
最新文章
- Node.js起步 -- (1)
- jquery实现可拖拽的div
- 李洪强-C语言3-数组
- codeforces 590B B. Chip 'n Dale Rescue Rangers(二分+计算几何)
- CentOS6.4 安装aria2多线程下载工具
- MaidSafe.net,一个完全去中心的化的云存储系统
- 新认识:SDF数据库
- springMVC中文乱码问题解决
- 个人作业1——四则运算题目生成程序(java代码,基于控制台)
- 使用JSON JavaScriptSerializer进行反序列化和序列化时报错,字符的长度超出了MaxJsonLength的长度
- Linuxc - C语言下return 0的意义
- sspanelv3魔改版邮件设置指南及常用配置
- Global Financial Applications uses the following Public tables
- matplotlib 绘图报错 RuntimeError: Invalid DISPLAY variable
- day02作业
- (最小生成树 Prim) nyoj1403-沟通无限校园网
- Effective Java 第三版——59. 熟悉并使用Java类库
- swift3 单例写法
- PHP array_unique()函数去除重复元素
- ansible使用1