python3-----继承 重载
时间:2019-02-16
本文章向大家介绍python3-----继承 重载,主要包括python3-----继承 重载使用实例、应用技巧、基本知识点总结和需要注意事项,具有一定的参考价值,需要的朋友可以参考一下。
通过继承,新类可以获得现有类的属性和方法。新类可以称作子类或者派生类,被继承的现有的类称作父类或者超类。
在子类(派生类)中,可以定义新的属性和方法,从而完成对父类(超类)的扩展。
1.可以通过继承来定义子类的格式:
class 类名(父类名):
子类中的语句
2.定义子类的属性和方法:
python中允许在子类中定义自己的属性和方法。如果子类定义的属性和方法于父类的属性和方法同名,则子类实例对象调用子类中定义的属性和方法。Python允许在子类方法中通过类对象直接调用超类的方法。
方法重载:用子类的方法覆盖父类的方法。
3.调用超类的构造函数:
在使用构造函数实例对象进行初始化时,可以在子类的构造函数中调用超类的构造函数。
class animal: #定义父类
def __init__(self,a):
self.animal_data = a
class cat(animal): #定义子类
def __init__(self,a,b): #定义子类的构造函数
self.cat_data = a
animal.__init__(self,b) #调用父类构造函数
c = cat("吃",20) #创建子类实例对象
c.animal_data #显示继承属性
c.cat_data #显示子类的自定义属性
4.多继承:
多继承:指子类可以同时继承多个父类。如果父类中存在同名的属性或方法,Python会按照从左到右的顺序在父类中搜索方法。
5.索引和分片重载:
与索引和分片有关的重载方法包括: __ getitem __ __ setitem __ __ delitem __
__ getitem __ 在实例对象执行索引、分片或for迭代时,调用该方法。
__ setitem __ 再通过赋值语句给索引或分片赋值时,调用该方法,实现对序列对象的修改。
__ delitem __ 该方法重载del运算,即删除索引或分片。
- 用 Python 实现一个大数据搜索引擎
- 关于 Java 你不知道的 10 件事
- 如何在一周之内获得GitHub stars 3500+ —为什么对于程序员这是如此的重要
- 程序员做完整性检查的命令行工具
- Spring MVC工作原理
- PHP 中被忽略的性能优化利器:生成器
- 精心收集的 48 个 JavaScript 代码片段,仅需 30 秒就可理解
- 从放弃迅雷到自己开发下载工具
- SSH 登录流程分析
- 从 0 到 1 优雅的实现PHP多进程管理
- 爬虫抓取的门道——来看这篇
- Java编程常见问题汇总(一)
- 关于 Java 你不知道的 10 件事
- PHP 实时生成并下载超大数据量的 EXCEL 文件
- JavaScript 教程
- JavaScript 编辑工具
- JavaScript 与HTML
- JavaScript 与Java
- JavaScript 数据结构
- JavaScript 基本数据类型
- JavaScript 特殊数据类型
- JavaScript 运算符
- JavaScript typeof 运算符
- JavaScript 表达式
- JavaScript 类型转换
- JavaScript 基本语法
- JavaScript 注释
- Javascript 基本处理流程
- Javascript 选择结构
- Javascript if 语句
- Javascript if 语句的嵌套
- Javascript switch 语句
- Javascript 循环结构
- Javascript 循环结构实例
- Javascript 跳转语句
- Javascript 控制语句总结
- Javascript 函数介绍
- Javascript 函数的定义
- Javascript 函数调用
- Javascript 几种特殊的函数
- JavaScript 内置函数简介
- Javascript eval() 函数
- Javascript isFinite() 函数
- Javascript isNaN() 函数
- parseInt() 与 parseFloat()
- escape() 与 unescape()
- Javascript 字符串介绍
- Javascript length属性
- javascript 字符串函数
- Javascript 日期对象简介
- Javascript 日期对象用途
- Date 对象属性和方法
- Javascript 数组是什么
- Javascript 创建数组
- Javascript 数组赋值与取值
- Javascript 数组属性和方法
- R语言Markowitz马克维茨投资组合理论分析和可视化
- 支付业务优化else if 代码
- 在UBUNTU虚拟机上安装R软件包
- R语言逻辑回归和泊松回归模型对发生交通事故概率建模
- 万恶的NPE差点让我半个月工资没了
- R语言非参数模型厘定保险费率:局部回归、广义相加模型GAM、样条回归
- 大白话java多线程,高手勿入
- R语言小数定律的保险业应用:泊松分布模拟索赔次数
- R语言中自编基尼系数的CART回归决策树的实现
- ArrayList的删除姿势你都掌握了吗
- sas神经网络:构建人工神经网络模型来识别垃圾邮件
- R语言多分类logistic逻辑回归模型在混合分布模拟单个风险损失值评估的应用
- 10分钟带你入门git到github
- 微服务[学成在线] day18:基于oauth2实现RBAC认证授权、微服务间认证实现
- 【TBase开源版测评】分布式事务全局一致性