iis服务器助手广告广告
返回顶部
首页 > 资讯 > 后端开发 > Python >Python_子类调用父类的方法
  • 649
分享到

Python_子类调用父类的方法

子类方法 2023-01-31 06:01:04 649人浏览 薄情痞子

Python 官方文档:入门教程 => 点击学习

摘要

1.方式一子类调用父类的方法,包含2中形式的调用。一种形式是在类内部通过继承的方式调用父类的方法,另外一种形式是子类实例化后之后通过继承的方式来调用父类的方法。如下图所示:注意一点,在子类内部通过继承的方式调用父类的属性时,必须要带上sel

1.方式一
子类调用父类的方法,包含2中形式的调用。一种形式是在类内部通过继承的方式调用父类的方法,另外一种形式是子类实例化后之后通过继承的方式来调用父类的方法。如下图所示:
Python_子类调用父类的方法
注意一点,在子类内部通过继承的方式调用父类的属性时,必须要带上self位置参数(self只在实例化过程中和在实例调用属性时才能省略(self本来的含义就是指向实例自己));而实例在通过继承调用父类的属性或方法时,则不用传self参数,因为实例已经实例化了呀!!!
该部分的代码块如下:注意一点,在子类内部通过继承的方式调用父类的属性时,必须要带上self位置参数(self只在实例化过程中和在实例调用属性时才能省略(self本来的含义就是指向实例自己));而实例在通过继承调用父类的属性或方法时,则不用传self参数,因为实例已经实例化了呀!!!

该部分的代码块如下:

class Person():
    "人的类"
    def __init__(self,name,age,sex):
        self.name = name
        self.age = age
        self.sex = sex
    def eat(self):
        print("%s开始吃饭了"%self.name)
class Student(Person):
    "学生类"
    def __init__(self,name,age,sex,classnaem):
        #子类调用父类的构造函数进行初始化
        Person.__init__(self,name,age,sex)  #通过子类把参数传给父类(self不能少,self只有在实例化和实例调用类时才能省略,此处不是)
        self.classnaem = classnaem
    def course(self):
        print("%s在%s上课"%(self.name,self.classnaem))
    def done(self):
        print("这个学生在干嘛?")
        #子类调用父类方法
        Person.eat(self)    #子类在调用父类方法必须要传self
#实例化一个子类
student = Student("周明",23,'男',"11届土木3班")
#调用子类本身的方法
student.course()
#通过子类调用父类的方法--->实例化之后来调用父类的方法
student.eat()
#调用子类的方法,在子类方法中调用了子类的方法,与student.eat有区别
student.done()

此时如果父类的名称更改了,那么在子类中所有用到父类名的地方均要进行修改了。所有此种方法不便于后期维护,为此我们选择方式二。
2.方式二
使用super来代替父类名,以方便代码的后期维护,见下图:
Python_子类调用父类的方法
使用super的好处,一是可以代替父类名,这样后期父类名更改了,我们只需要更改子类名称后面的父类名即可,子类中其他的父类名可以不用更改;二是使用了super后,调用父类方法时可以不传参数self。
该部分的代码块为:

class Person():
    "人的类"
    def __init__(self,name,age,sex):
        self.name = name
        self.age = age
        self.sex = sex
    def eat(self):
        print("%s开始吃饭了"%self.name)
class Student(Person):
    "学生类"
    def __init__(self,name,age,sex,classnaem):
        #子类调用父类的构造函数进行初始化
        # Person.__init__(self,name,age,sex)  #通过子类把参数传给父类(self不能少,self只有在实例化和实例调用类时才能省略,此处不是)
        #使用super来替换父类名
        super().__init__(name,age,sex)  #通过子类把参数传给父类,用super可以省略self
        self.classnaem = classnaem
    def course(self):
        print("%s在%s上课"%(self.name,self.classnaem))
    def done(self):
        print("这个学生在干嘛?")
        #子类调用父类方法
        super().eat()    #子类在调用父类方法,使用super可以省略self
#实例化一个子类
student = Student("周明",23,'男',"11届土木3班")
#调用子类本身的方法
student.course()
#通过子类调用父类的方法--->实例化之后来调用父类的方法
student.eat()
#调用子类的方法,在子类方法中调用了子类的方法,与student.eat有区别
student.done()

--结束END--

本文标题: Python_子类调用父类的方法

本文链接: https://www.lsjlt.com/news/190569.html(转载时请注明来源链接)

有问题或投稿请发送至: 邮箱/279061341@qq.com    QQ/279061341

本篇文章演示代码以及资料文档资料下载

下载Word文档到电脑,方便收藏和打印~

下载Word文档
猜你喜欢
  • Python_子类调用父类的方法
    1.方式一子类调用父类的方法,包含2中形式的调用。一种形式是在类内部通过继承的方式调用父类的方法,另外一种形式是子类实例化后之后通过继承的方式来调用父类的方法。如下图所示:注意一点,在子类内部通过继承的方式调用父类的属性时,必须要带上sel...
    99+
    2023-01-31
    子类 方法
  • java父类如何调用子类方法
    在Java中,父类可以调用子类方法的一种方式是使用多态。具体步骤如下:1. 定义一个父类,其中包含一个方法。这个方法可以被子类覆盖。...
    99+
    2023-09-22
    java
  • python子类怎么调用父类方法
    在Python中,子类可以通过`super()`函数来调用父类的方法。具体步骤如下: 在子类中定义一个与父类方法同名的方法。 使用...
    99+
    2023-10-25
    python
  • java子类调用父类方法是什么
    Java子类调用父类方法是通过使用super关键字来实现的。super关键字可以用来调用父类的构造方法、成员变量和成员方法。通过su...
    99+
    2023-08-09
    java
  • php子类调用父类的方法有哪些
    在PHP中,子类可以通过以下几种方式调用父类的方法:1. 使用 `parent::methodName()`:使用`parent::...
    99+
    2023-08-11
    php
  • python中子类调用父类的初始化方法
    http://bestchenwu.iteye.com/blog/1044848http://www.crazyant.net/1303.html一直不太理解python的初始化方法,今天找了下资料,先放这改天整理下一、第一种解释:pyth...
    99+
    2023-01-31
    子类 初始化 方法
  • python子类怎么调用父类
    在Python中,可以使用super()函数来调用父类的方法。super()函数返回一个临时对象,该对象可以用于调用父类的方法。以下...
    99+
    2023-10-18
    python
  • java父类对象怎么调用子类
    在Java中,父类对象无法直接调用子类的方法,因为父类对象只能访问父类中的成员和方法。如果想要调用子类的方法,可以通过以下几种方式实...
    99+
    2023-08-11
    java
  • java子类覆盖父类的方法是什么
    Java中子类覆盖父类的方法是通过在子类中定义一个与父类相同签名的方法来实现的。在子类中可以重新实现父类的方法,也可以添加额外的功能...
    99+
    2023-10-08
    java
  • java子类继承父类的方法是什么
    Java中子类继承父类的方法是通过使用关键字`extends`实现的。在子类的声明中,使用`extends`关键字后面跟着父类的名称...
    99+
    2023-08-31
    java
  • java调用父类的方法有哪些
    在Java中,调用父类的方法有以下几种方式:1. 使用super关键字:使用super关键字可以调用父类的方法。可以通过super....
    99+
    2023-08-09
    java
  • python调用父类的方法是什么
    在Python中,要调用父类的方法,可以使用`super()`函数来实现。在子类中,通过`super()`函数可以调用父类的方法,从...
    99+
    2024-02-29
    python
  • PHP8.0中的父类调用语法
    PHP是一种广泛应用于Web开发的服务器端脚本语言,而PHP 8.0版本中引入了一种新的父类调用语法,让面向对象编程更加方便和简洁。在PHP中,我们可以通过继承的方式创建一个父类和一个或多个子类。子类可以继承父类的属性和方法,并可以通过重写...
    99+
    2023-05-14
    PHP 语法 父类调用
  • python怎么用构造函数实现子类调用父类
    在Python中,可以使用构造函数实现子类调用父类的方法。以下是一个示例: class ParentClass: def _...
    99+
    2024-02-29
    python
  • react-native 父函数组件调用类子组件的方法(实例详解)
    react-native 父函数组件调用类子组件的方法,代码如下所示: import React, {Component} from 'react'; import {Text, V...
    99+
    2024-04-02
  • Vue中的父子方法怎么调用
    本篇内容主要讲解“Vue中的父子方法怎么调用”,感兴趣的朋友不妨来看看。本文介绍的方法操作简单快捷,实用性强。下面就让小编来带大家学习“Vue中的父子方法怎么调用”吧!在Vue中,父子组件之间的通信可以通过props和events来实现。p...
    99+
    2023-07-06
  • 覆盖父类函数:理解子类对父类行为的扩展
    面向对象编程中,子类通过覆盖父类函数扩展其行为。覆盖函数需使用 override 关键字,子类函数签名必须与父类完全相同。优点包括:定制父类行为、保持父类功能、提升代码可重用性。注意匹配...
    99+
    2024-05-01
    面向对象 重写
  • Java编程关于子类重写父类方法问题的理解
    子类重新实现父类的方法称重写;重写时可以修改访问权限修饰符和返回值,方法名和参数类型及个数都不可以修改;仅当返回值为类类型时,重写的方法才可以修改返回值类型,且必须是父类方法返回值的子类;要么就不修改,与父类返回值类型相同。那么,该如何理解...
    99+
    2023-05-30
    java 子类重写父类方法 ava
  • Flutter 父子组件互调方法
    Flutter 父子组件互调方法 文章目录 Flutter 父子组件互调方法一、父组件调用子组件方法1、概述2、代码实现3、效果 二、子组件调用父组件方法1、概述2、代码实现3、效果 ...
    99+
    2023-10-02
    flutter javascript 前端
  • java父类怎么引用指向子类对象
    在Java中,父类可以通过以下方式引用指向子类对象:1. 直接赋值:将子类对象直接赋值给父类引用变量。```javaParentCl...
    99+
    2023-09-22
    java
软考高级职称资格查询
编程网,编程工程师的家园,是目前国内优秀的开源技术社区之一,形成了由开源软件库、代码分享、资讯、协作翻译、讨论区和博客等几大频道内容,为IT开发者提供了一个发现、使用、并交流开源技术的平台。
  • 官方手机版

  • 微信公众号

  • 商务合作