Python中类-继承和方法的重写
什么是继承
继承就是让类与类之间产生父子关系,子类可以拥有父类的静态属性和方法
继承就是可以获取到另一个类中的静态属性和普通方法(并非所有成员)
在python中,新建的类可以继承一个或多个父类,父类又可称为基类或超类,新建的类称为派生类
注意:python中的继承可分为:单继承和多继承
class Animal:def eat(self):print("吃货")class Dog(Animal):def bark(self):print("汪汪汪")class Hsq(Dog):def fly(self):print("飞吧!")hsq = Hsq()
hsq.eat()
hsq.bark()
hsq.fly()# 吃货
# 汪汪汪
# 飞吧!
查看继承的父类 格式:类名.__bases__
注意:
(1.python3中如果一个类没有继承任何类,默认继承object类。我们管这类叫做新式类
(2.object类,是python中的祖宗,所有的类都是从object类中继承下来
查看Cat类和Animal类继承的父类
方法的重写
子类中定义了和父类中相同的方法,我们叫做方法的重写(派生方法)
实例对象调用此方法 的时候就会调用自己类中的方法了
练习:定义一个Person类创建eat()方法
定义一个 Student 的类,创建 eat()方 法,规定学生去食堂吃饭,定义一个 Boss 类创建 eat()方法,规定 Boss 去酒店吃。
class Person:def eat(self):print("去吃饭")class Student(Person):def eat(self):print("去食堂吃饭")class Boss(Person):def eat(self):print("去酒店吃")stu = Student()
stu.eat()# 去食堂吃饭
Python中类-继承和方法的重写相关推荐
- 父子继承与方法的重写 java 114818255
父子继承与方法的重写 java 114818255 定义了一个父类 子类继承父类 测试类 方法的覆盖 父类的私有属性 super 局部变量,实例变量,父类的实例变量
- Solidity基础教程:合约的继承与方法的重写
Solidity基础教程:合约的继承与方法的重写 合约继承 合约继承使用is关键字 contract ERC721 is Context, ERC165, IERC721, IERC721Metada ...
- python 多继承中方法的调用顺序
python支持多继承,如果子类没有重写__init__()方法,则默认会调用父类的__init__()方法.如果重写了则不会调用父类的,但是可以通过super().__init__()显示调用. 这 ...
- 2020.1.30 封装和隐藏(四种访问权限修饰符)、this、JavaBean、继承、方法的重写
面对对象特征之一:封装和隐藏 Java中通过数据声明为私有的(private),再提供公共的(public)方法:getXxx()和setXxx()实现对属性的操作. 四种访问权限修饰符 在同一个ja ...
- Python中类的约束方法
1.python推荐 class Payment:def pay(self,money):raise Exception('按照规范来可以吗?')class Ali(Payment):def pay( ...
- python 中类的初始化方法
在 Python 的类中,有一种特殊的方法--初始化方法.它的格式是 def __init__(self):,方法名由 init(initialize 的缩写,初始化的意思)加左右两边的 双下划线 组 ...
- python中类的定义方法_在Python中定义类变量的正确方法
这两种方法都不一定正确或不正确,它们只是两种不同的类元素:方法__init__之外的元素是静态元素:它们属于类. __init__方法中的元素是对象(self)的元素:它们不属于类. 使用一些代码可以 ...
- python中类的定义方法_Python类的定义、方法和属性使用
类用来描述具有相同的属性和方法的对象的集合. 对于在类中定义的函数,称为方法. 类变量不直接叫做类变量,称为属性. 1.类的定义 例子: classUser():pass 说明: (1)定义了一个类名 ...
- python中类的定义方法_python中类的定义方法
#coding =utf-8 ## 类的定义##-------------------------------------------------- classEmployee: empCount=0 ...
最新文章
- Typescript-规范
- linux线程栈溢出与局部变量,Linux下和core说再见之:栈溢出
- java程序a-z_用Java写一个程序:使其输出从A-Z的排序字母
- BLE主机主动扫描和被动扫描
- 为什么监听不到开机广播action.BOOT_COMPLETED
- Java中的String类
- 秒杀多线程第十五篇 关键段,事件,互斥量,信号量的“遗弃”问题
- 进程的创建与可执行程序的加载
- div中直接绑定富文本值
- 看门狗性能软件测试,《看门狗:军团》PC版性能测试 不建议光追,优化极差
- hive常见的建表方式有哪些?各自的使用场景是?
- vim 快捷键_VIM学习笔记 自动补全详解(Auto-Completion Detail)
- vray安装显示服务器没有安装,vray3.2安装教程
- 视频文件转gif图片Movie To GIF使用
- 了解CSS的float高度坍塌的原理,并懂得怎么解决高度坍塌!
- Floyd-Warshall算法详解(转)
- ERROR: CIB not supported: validator 'transitional-0.6', release '3.0.1'
- FreeBSD:从内核获取其他进程的pid及cpu占用率
- vulnhub靶场-hacksudo - Thor
- TensorFlow北大公开课学习笔记8-复现vgg16并实现图片识别
热门文章
- 代码随想录二战day2
- CodeForce-1196D1-RGB Substring (easy version)
- chrome inspect检测不到手机设备的解决方法
- 李宏毅 HW4 hard baseline 解析
- java字符串转换成字符_Java字符串转为字符
- 使用mac电脑预览功能修改图片尺寸以及裁剪
- 【路径规划】 Optimal Trajectory Generation in Frenet阅读记录 (附python代码实例)
- 进程与线程 基础知识
- 游戏美术行业真的是传说中的一入职就能领高薪吗?揭秘月薪上万广告语背后的真相!
- 【sdx62】增加memtester编译操作说明