Python面向对象实现方法总结


Posted in Python onAugust 12, 2020

总结

类的定义

很久以前,语言都是面向过程的,经过计算机科学家的探索,出现了面向对象。面向对象可以解释生活中很多东西。比如人,人就是个对象,有参数,比如器官,身高啥的,有方法,比如跑步,学习等。不扯那么多了。
对象就是类,在python中用class定义类。类里面有两大部分,一部分是属性,一部分是方法。比如,定义一个人对象。这个人的属性就是身高,体重,方法就是说话。

#定义人
class Person:
  #定义属性
  height=0
  weight=0

  #构造函数
  def __init__(self,h,w):
    self.height=h
    self.weight=w
  
  #定义方法
  def speak(self):
    print('I can speak!')

上面的代码就定义了一个Person类.

继承

定义了类之后,就要牵扯到继承这个事。说白了就是儿子继承父亲的家产(属性,方法),但儿子也可对属性进行添加,方法进行重写或增加等。

python继承很简单,格式是这样的

class Son(Parent)

通过这样的定义就有了一个继承类son,他会继承parent的everything。写段代码例子。

class Parent:
  money=0
  def __init__(self,m):
    self.money=m
    
  def makeMoney(self):
    print('i can make money!')

class Son(Parent):
  height=0
  def __init__(self,m,h):
    Parent.__init__(self,m)
    self.height=h
    
  def makeMoney(self):
    print('So did i!')
son=Son(20,1)
print(son.makeMoney())

继承后你可能想调用父类的方法,可以用super(Son,son).makeMoney()调用。

上面是单继承的例子,多继承类似,在此就不再赘述

私有变量

这个东西只能在类里使用,不能通过实例化对象调用。

定义的时候在变量名字前加__

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持三水点靠木。

Python 相关文章推荐
python自动化测试之连接几组测试包实例
Sep 28 Python
在Python中用split()方法分割字符串的使用介绍
May 20 Python
Python中的推导式使用详解
Jun 03 Python
Python使用PIL模块生成随机验证码
Nov 21 Python
Python+OpenCV让电脑帮你玩微信跳一跳
Jan 04 Python
Python3 queue队列模块详细介绍
Jan 05 Python
Python将一个CSV文件里的数据追加到另一个CSV文件的方法
Jul 04 Python
pyqt5的QComboBox 使用模板的具体方法
Sep 06 Python
Python字典常见操作实例小结【定义、添加、删除、遍历】
Oct 25 Python
在Mac中配置Python虚拟环境过程解析
Jun 22 Python
python代数式括号有效性检验示例代码
Oct 04 Python
python实现定时发送邮件
Dec 23 Python
Python命名空间及作用域原理实例解析
Aug 12 #Python
python将字典内容写入json文件的实例代码
Aug 12 #Python
Python调用jar包方法实现过程解析
Aug 11 #Python
如何用python免费看美剧
Aug 11 #Python
Pythonic版二分查找实现过程原理解析
Aug 11 #Python
Python3合并两个有序数组代码实例
Aug 11 #Python
Python基于gevent实现文件字符串查找器
Aug 11 #Python
You might like
php xml-rpc远程调用
2008/12/19 PHP
从康盛产品(discuz)提取出来的模板类
2011/06/28 PHP
PHP实现获取文件后缀名的几种常用方法
2015/08/08 PHP
Thinkphp 框架扩展之应用模式实现方法分析
2020/04/27 PHP
javascript之函数直接量(function(){})()
2007/06/29 Javascript
javascript 页面只自动刷新一次
2009/07/10 Javascript
通过JS 获取Mouse Position(鼠标坐标)的代码
2009/09/21 Javascript
对采用动态原型方式无法展示继承机制得思考
2009/12/04 Javascript
Js(JavaScript)中,弹出是或否的选择框示例(confirm用法的实例分析)
2013/07/09 Javascript
js中parseInt函数浅谈
2013/07/31 Javascript
JavaScript中用字面量创建对象介绍
2014/12/31 Javascript
JavaScript学习笔记之定时器
2015/01/22 Javascript
javascript合并表格单元格实例代码
2016/01/03 Javascript
浅谈Angular4中常用管道
2017/09/27 Javascript
JavaScript 五大常见函数
2018/03/23 Javascript
jQuery基于闭包实现的显示与隐藏div功能示例
2018/06/09 jQuery
微信小程序实现红包雨功能
2018/07/11 Javascript
JavaScript内置对象math,global功能与用法实例分析
2019/06/10 Javascript
JavaScript深入V8引擎以及编写优化代码的5个技巧
2019/06/24 Javascript
[03:11]2014DOTA2国际邀请赛-VG掉入败者组 独家专访357
2014/07/19 DOTA
[01:18:36]LGD vs VP Supermajor 败者组决赛 BO3 第一场 6.10
2018/07/04 DOTA
python使用mailbox打印电子邮件的方法
2015/04/30 Python
Windows下Python2与Python3两个版本共存的方法详解
2017/02/12 Python
Python读写docx文件的方法
2018/05/08 Python
在spyder IPython console中,运行代码加入参数的实例
2020/04/20 Python
基于CSS3实现图片模糊过滤效果
2015/11/19 HTML / CSS
深入了解canvas在移动端绘制模糊的问题解决
2019/04/30 HTML / CSS
市场营销专业推荐信
2013/11/03 职场文书
音乐教学案例
2014/01/30 职场文书
联欢晚会主持词
2014/03/25 职场文书
爱心倡议书范文
2014/05/12 职场文书
公司副总经理任命书
2014/06/05 职场文书
2014党的群众路线教育实践活动学习心得体会
2014/10/31 职场文书
入党转正介绍人意见
2015/06/03 职场文书
2016年社区中秋节活动总结
2016/04/05 职场文书
详解Java实践之抽象工厂模式
2021/06/18 Java/Android