位置: 编程技术 - 正文

Python中Class类用法实例分析(python class类型)

编辑:rootadmin

推荐整理分享Python中Class类用法实例分析(python class类型),希望有所帮助,仅作参考,欢迎阅读内容。

文章相关热门搜索词:python__class__,python classs,python中class的作用,python__class__,python class类型,python class类里面直接运行代码,python class类里面直接运行代码,python__class__,内容如对您有帮助,希望把文章链接给更多的朋友!

本文实例讲述了Python中Class类用法。分享给大家供大家参考,具体如下:

尽管Python在Function Programming中有着其他语言难以企及的的优势,但是我们也不要忘了Python也是一门OO语言哦。因此我们关注Python在FP上的优势的同时,还得了解一下Python在OO方面的特性。

要讨论Python的OO特性,了解Python中的Class自然是首当其冲了。在Python中定义class和创建对象实例都很简单,具体代码如下:

运行效果如下:

Python支持多重继承

首先第一点,你会发现Class的定义中有一个括号,这是体现继承的地方。 Java用extends,C#、C++用冒号(:),Python则用括号了。从括号中包含着两个值,聪明的你一定可以发现:Python支持多重继承;

__init__是Class中的构造函数

Python中Class类用法实例分析(python class类型)

第二点,__init__是Class中的构造函数,两种不同形式的构造函数体现了Python支持函数重载。在构造函数中,有一个特别的参数self,其含义与我们在Java和C#中常见的this是一样的。在这里需要强调一点:在Class中定义的方法实质上也是function,但是在方法定义的时候必须包含self这个参数,而且必须将self这个参数放在第一位;

python成员变量

第三点,在Python中,你并不需要显式的声明Class的Data Members,而是在赋值的时候,被赋值的变量就相应成为了Class的Data Memebers,正如代码中的x和y。不仅你不需要显式的声明Data Members,更加特别的,你甚至可以通过del方法将Class中的Data Memebers给删掉。当我第一次看到这样的特性的时候,着实吃了一惊。毕竟OO的第一条就是封装了,但是这样的特性是不是破坏了封装的特性呢?

python方法二义性问题

第四点,由于Python支持多重继承,因此就有可能出现方法二义性问题[1]。然而由于Python遵循深度优先的搜寻法则,很好地避免了方法二义性的问题。例如在以上的代码中,MyClass同时继承于BaseClassA和BaseClassB,假设MyClass调用一个叫derivedMethod方法,derivedMethod同时定义在BaseClassA和BaseClassB中,且Signature也完全相同,那么BaseClassA中的方法将被调用。如果BaseClassA中并没有定义derivedMethod,而是BaseClassA的父类定义了这个方法的话,将会是BaseClassA的父类中derivedMethod被调用。总之,继承方法搜索的路径是先从左到右,在选定了一个BaseClass之后,将会一直沿着该BaseClass的继承结构进行搜索,直至最顶端,然后再到另外一个一个BaseClass。

就先说着这么多了,对于Python中OO的特性将会在以后的Post中有进一步的讲述。

方法二义性:由于一个类同时继承于两个或者多个父类,而在这些父类当中存在着signature完全相同的方法,那么编译器将无法判断子类将继承哪个父类中的方法,从而导致方法二义性问题。

希望本文所述对大家Python程序设计有所帮助。

python开发中module模块用法实例分析 本文实例讲述了python开发中module模块用法。分享给大家供大家参考,具体如下:在python中,我们可以把一些功能模块化,就有一点类似于java中,把一些

python开发中range()函数用法实例分析 本文实例讲述了python开发中range()函数用法。分享给大家供大家参考,具体如下:python中的range()函数的功能很强大,所以我觉得很有必要和大家分享一下

python开发之文件操作用法实例 本文实例讲述了python开发之文件操作用法。分享给大家供大家参考,具体如下:先来看看官方API:os-Miscellaneousoperatingsysteminterfaces下面是我做的demo:impor

标签: python class类型

本文链接地址:https://www.jiuchutong.com/biancheng/378589.html 转载请保留说明!

上一篇:python开发之函数定义实例分析(python函数经典例程)

下一篇:python开发中module模块用法实例分析(python module import)

  • 以公司名义买50万的车可以省多少钱
  • 饭店发光板图片大全
  • 生产型企业出口退税计算公式
  • 非经营性资产包括哪些科目
  • 车船税每年都要交吗标准多少
  • 机器设备折旧计提规定
  • 固定资产盘盈原因
  • 建筑设计行业收入调查
  • 在建工程购买的设备计入哪个科目
  • 存款取款业务记入那个日记账?
  • 股份支付为什么计入资本公积?
  • 汽车融资租赁行业发展趋势
  • 增值税发票进项税额抵扣
  • 未足额代扣代缴车船税
  • 免抵税额为什么不能抵下期
  • 加油发票税号错误怎么补救
  • 小公司发工资怎么做账
  • 税收滞纳金变化
  • 本月无票收入到下月开具如何申报
  • 金蝶标准版利润表季度怎么选
  • 工程管理咨询费计入什么科目
  • 非正常损失怎么处理
  • 公司名下的车怎么上牌
  • 公转私合理吗
  • 更正或作废申报怎么填
  • windows10轻松使用是什么
  • 服务器数据迁移到新的服务器
  • 开增值税专用发票必须走公账吗
  • python进行傅立叶变换
  • 支票沾水
  • Es6的新特性promise对象的设计初衷是
  • read命令功能
  • 应收账款的
  • php网站用什么软件修改
  • phpcms怎么用
  • 物业收取停车费需要业主同意吗
  • 一个月可以勾选多少进项税额
  • 增值税季度缴纳时间
  • 铝合金门窗行业利润率
  • 财政监制章专用收据可以税前扣除吗
  • 增值税发票过了两个月怎么作废
  • 资本公积的会计处理方法
  • 资产负债表可以反映的具体信息有
  • 餐厅打包盒收费标准通知
  • 劳务合同如果不发工资怎么办
  • 上市公司股票增发条件
  • 实时缴税计入什么科目
  • 短期借款的账务处理借增贷减
  • 微信转账没有显示对方的名字怎么办
  • 收购 发票
  • 企业采用公允价值进行会计核算,所体现的会计质量要求
  • 股东之间转让股权有优先购买权吗
  • 企业会计账簿设计的原则
  • 企业低值易耗品的摊销方法有( )
  • 基于Sql Server通用分页存储过程的解决方法
  • Linux服务器中MySQL远程连接的开启方法
  • 组策略 guest
  • windows常用功能
  • freebsd 配置ip
  • 深度u盘装xp系统教程
  • windowsxp自带播放器
  • win7电脑老是跳出弹窗广告怎么办
  • centos7 network
  • Win7旗舰版系统文件名称
  • linux编译安装php扩展
  • excel表格文本形式在哪里
  • window系统设置
  • 简单模拟电路图
  • python条件语句的基本结构
  • jquery左侧导航栏
  • 阿里云一键建站
  • vuejs单页面
  • 建立虚拟局域网有什么好处
  • unity控制组件开关
  • 安卓抓包apk
  • jQuery Ajax 实例代码 ($.ajax、$.post、$.get)
  • 购房发票的发票代码是哪个
  • 党员e先锋中的支部云课堂在哪
  • 公司注销时注册资金未缴完
  • ssr服务器地址端口密码
  • 免责声明:网站部分图片文字素材来源于网络,如有侵权,请及时告知,我们会第一时间删除,谢谢! 邮箱:opceo@qq.com

    鄂ICP备2023003026号

    网站地图: 企业信息 工商信息 财税知识 网络常识 编程技术

    友情链接: 武汉网站建设