什么是继承

继承就是让类与类之间产生父子关系,子类可以拥有父类的静态属性和方法
继承就是可以获取到另一个类中的静态属性和普通方法(并非所有成员)
在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中类-继承和方法的重写相关推荐

  1. 父子继承与方法的重写 java 114818255

    父子继承与方法的重写 java 114818255 定义了一个父类 子类继承父类 测试类 方法的覆盖 父类的私有属性 super 局部变量,实例变量,父类的实例变量

  2. Solidity基础教程:合约的继承与方法的重写

    Solidity基础教程:合约的继承与方法的重写 合约继承 合约继承使用is关键字 contract ERC721 is Context, ERC165, IERC721, IERC721Metada ...

  3. python 多继承中方法的调用顺序

    python支持多继承,如果子类没有重写__init__()方法,则默认会调用父类的__init__()方法.如果重写了则不会调用父类的,但是可以通过super().__init__()显示调用. 这 ...

  4. 2020.1.30 封装和隐藏(四种访问权限修饰符)、this、JavaBean、继承、方法的重写

    面对对象特征之一:封装和隐藏 Java中通过数据声明为私有的(private),再提供公共的(public)方法:getXxx()和setXxx()实现对属性的操作. 四种访问权限修饰符 在同一个ja ...

  5. Python中类的约束方法

    1.python推荐 class Payment:def pay(self,money):raise Exception('按照规范来可以吗?')class Ali(Payment):def pay( ...

  6. python 中类的初始化方法

    在 Python 的类中,有一种特殊的方法--初始化方法.它的格式是 def __init__(self):,方法名由 init(initialize 的缩写,初始化的意思)加左右两边的 双下划线 组 ...

  7. python中类的定义方法_在Python中定义类变量的正确方法

    这两种方法都不一定正确或不正确,它们只是两种不同的类元素:方法__init__之外的元素是静态元素:它们属于类. __init__方法中的元素是对象(self)的元素:它们不属于类. 使用一些代码可以 ...

  8. python中类的定义方法_Python类的定义、方法和属性使用

    类用来描述具有相同的属性和方法的对象的集合. 对于在类中定义的函数,称为方法. 类变量不直接叫做类变量,称为属性. 1.类的定义 例子: classUser():pass 说明: (1)定义了一个类名 ...

  9. python中类的定义方法_python中类的定义方法

    #coding =utf-8 ## 类的定义##-------------------------------------------------- classEmployee: empCount=0 ...

最新文章

  1. Typescript-规范
  2. linux线程栈溢出与局部变量,Linux下和core说再见之:栈溢出
  3. java程序a-z_用Java写一个程序:使其输出从A-Z的排序字母
  4. BLE主机主动扫描和被动扫描
  5. 为什么监听不到开机广播action.BOOT_COMPLETED
  6. Java中的String类
  7. 秒杀多线程第十五篇 关键段,事件,互斥量,信号量的“遗弃”问题
  8. 进程的创建与可执行程序的加载
  9. div中直接绑定富文本值
  10. 看门狗性能软件测试,《看门狗:军团》PC版性能测试 不建议光追,优化极差
  11. hive常见的建表方式有哪些?各自的使用场景是?
  12. vim 快捷键_VIM学习笔记 自动补全详解(Auto-Completion Detail)
  13. vray安装显示服务器没有安装,vray3.2安装教程
  14. 视频文件转gif图片Movie To GIF使用
  15. 了解CSS的float高度坍塌的原理,并懂得怎么解决高度坍塌!
  16. Floyd-Warshall算法详解(转)
  17. ERROR: CIB not supported: validator 'transitional-0.6', release '3.0.1'
  18. FreeBSD:从内核获取其他进程的pid及cpu占用率
  19. vulnhub靶场-hacksudo - Thor
  20. TensorFlow北大公开课学习笔记8-复现vgg16并实现图片识别

热门文章

  1. 代码随想录二战day2
  2. CodeForce-1196D1-RGB Substring (easy version)
  3. chrome inspect检测不到手机设备的解决方法
  4. 李宏毅 HW4 hard baseline 解析
  5. java字符串转换成字符_Java字符串转为字符
  6. 使用mac电脑预览功能修改图片尺寸以及裁剪
  7. 【路径规划】 Optimal Trajectory Generation in Frenet阅读记录 (附python代码实例)
  8. 进程与线程 基础知识
  9. 游戏美术行业真的是传说中的一入职就能领高薪吗?揭秘月薪上万广告语背后的真相!
  10. 【sdx62】增加memtester编译操作说明