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 相关文章推荐
Windows下安装python2.7及科学计算套装
Mar 05 Python
举例讲解Python的lambda语句声明匿名函数的用法
Jul 01 Python
Python3基于sax解析xml操作示例
May 22 Python
Python使用tkinter库实现文本显示用户输入功能示例
May 30 Python
python生成器推导式用法简单示例
Oct 08 Python
Flask中endpoint的理解(小结)
Dec 11 Python
Python新手学习标准库模块命名
May 29 Python
Python文件操作模拟用户登陆代码实例
Jun 09 Python
基于Python和C++实现删除链表的节点
Jul 06 Python
利用Python函数实现一个万历表完整示例
Jan 23 Python
解决Python保存文件名太长OSError: [Errno 36] File name too long
May 11 Python
Python  序列化反序列化和异常处理的问题小结
Dec 24 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 删除一个目录及目录下的所有文件的函数代码
2010/05/26 PHP
PHP正确配置mysql(apache环境)
2011/08/28 PHP
destoon数据库表说明汇总
2014/07/15 PHP
两千行代码的PHP学习笔记汇总
2014/10/05 PHP
php实现utf-8转unicode函数分享
2015/01/06 PHP
php中异常处理方法小结
2015/01/09 PHP
Yii编程开发常见调用技巧集锦
2016/07/15 PHP
PHP观察者模式示例【Laravel框架中有用到】
2018/06/15 PHP
php微信开发之关键词回复功能
2018/06/13 PHP
laravel5.2表单验证,并显示错误信息的实例
2019/09/29 PHP
jQuery中ajax的使用与缓存问题的解决方法
2013/12/19 Javascript
jQuery操作CheckBox的方法介绍(选中,取消,取值)
2014/02/04 Javascript
js实现select跳转功能代码
2014/10/22 Javascript
JS处理json日期格式化问题
2015/10/01 Javascript
javascript基本算法汇总
2016/03/09 Javascript
关于backbone url请求中参数带有中文存入数据库是乱码的快速解决办法
2016/06/13 Javascript
微信小程序 前端源码逻辑和工作流详解
2016/10/08 Javascript
VueRouter导航守卫用法详解
2017/12/25 Javascript
一步一步的了解webpack4的splitChunk插件(小结)
2018/09/17 Javascript
一次Webpack配置文件的分离实战记录
2018/11/30 Javascript
使用javascript做时间倒数读秒功能的实例
2019/01/23 Javascript
小程序云函数调用API接口的方法
2019/05/17 Javascript
小程序rich-text组件如何改变内部img图片样式的方法
2019/05/22 Javascript
javascript操作元素的常见方法小结
2019/11/13 Javascript
python输出当前目录下index.html文件路径的方法
2015/04/28 Python
Python程序运行原理图文解析
2018/02/10 Python
python实现pdf转换成word/txt纯文本文件
2018/06/07 Python
Python 操作SQLite数据库的示例
2020/10/16 Python
Python3.8.2安装包及安装教程图文详解(附安装包)
2020/11/28 Python
three.js模拟实现太阳系行星体系功能
2019/09/03 HTML / CSS
Petmate品牌官方网站:宠物用品
2018/11/25 全球购物
顶撞老师检讨书
2014/02/07 职场文书
各类场合主持词开场白范文集锦
2019/08/16 职场文书
PHP中->和=>的意思
2021/03/31 PHP
Python爬虫:从m3u8文件里提取小视频的正确操作
2021/05/14 Python
深入浅出讲解Java8函数式编程
2022/01/18 Java/Android