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实现一个简单的能够上传下载的HTTP服务器
May 05 Python
python插入排序算法实例分析
Jul 03 Python
python实现下载指定网址所有图片的方法
Aug 08 Python
Python编写电话薄实现增删改查功能
May 07 Python
python3实现SMTP发送邮件详细教程
Jun 19 Python
pandas取出重复数据的方法
Jul 04 Python
Python使用docx模块实现刷题功能代码
Feb 13 Python
Python用dilb提取照片上人脸的示例
Oct 26 Python
Python numpy大矩阵运算内存不足如何解决
Nov 19 Python
用python删除文件夹中的重复图片(图片去重)
May 12 Python
python异常中else的实例用法
Jun 15 Python
用Python仅20行代码编写一个简单的端口扫描器
Apr 08 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.ini中添加extension=php_mysqli.dll指令的说明
2007/06/14 PHP
基于PHP文件操作的详细诠释
2013/06/21 PHP
PHP批量上传图片的具体实现方法介绍.
2014/02/26 PHP
PHP实现JS中escape与unescape的方法
2016/07/11 PHP
载入jQuery库的最佳方法详细说明及实现代码
2012/12/28 Javascript
如何在父窗口中得知window.open()出的子窗口关闭事件
2013/10/15 Javascript
js+css实现导航效果实例
2015/02/10 Javascript
cookie的secure属性详解
2015/04/08 Javascript
javascript实现手机震动API代码
2015/08/05 Javascript
js实现将选中内容分享到新浪或腾讯微博
2015/12/16 Javascript
jQuery控制控件文本的长度的操作方法
2016/12/05 Javascript
JS实现间歇滚动的运动效果实例
2016/12/22 Javascript
JavaScript实现的商品抢购倒计时功能示例
2017/04/17 Javascript
js canvas实现简单的图像扩散效果
2020/06/28 Javascript
Angular中支持SCSS的方法
2017/11/18 Javascript
vue.js2.0 实现better-scroll的滚动效果实例详解
2018/08/13 Javascript
jquery插件开发模式实例详解
2019/07/20 jQuery
js中的面向对象之对象常见创建方法详解
2019/12/16 Javascript
一文秒懂JavaScript构造函数、实例、原型对象以及原型链
2020/08/25 Javascript
Vue实现圆环进度条的示例
2021/02/06 Vue.js
Python中使用bidict模块双向字典结构的奇技淫巧
2016/07/12 Python
详解使用pymysql在python中对mysql的增删改查操作(综合)
2017/01/18 Python
解决pandas 作图无法显示中文的问题
2018/05/24 Python
Python类装饰器实现方法详解
2018/12/21 Python
python url 参数修改方法
2018/12/26 Python
python threading和multiprocessing模块基本用法实例分析
2019/07/25 Python
Python基于Serializer实现字段验证及序列化
2020/11/04 Python
香港No.1得奖零食网:香港零食大王
2016/07/22 全球购物
Champs Sports加拿大:北美最大的以商场为基础的专业运动鞋和服装零售商之一
2018/05/01 全球购物
骨干教师培训感言
2014/01/16 职场文书
社区五一劳动节活动总结
2015/02/09 职场文书
《牧场之国》教学反思
2016/02/22 职场文书
Python实现排序方法常见的四种
2021/07/15 Python
如何利用 CSS Overview 面板重构优化你的网站
2021/10/24 HTML / CSS
mysql的单列多值存储实例详解
2022/04/05 MySQL
Win11怎么把合并的任务栏分开 Win11任务栏合并分开教程
2022/04/06 数码科技