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实现在Linux系统下更改当前进程运行用户
Feb 04 Python
Python中使用partial改变方法默认参数实例
Apr 28 Python
python实现指定字符串补全空格的方法
Apr 30 Python
Python实现将绝对URL替换成相对URL的方法
Jun 28 Python
python实现爬虫统计学校BBS男女比例(一)
Dec 31 Python
NumPy 基本切片和索引的具体使用方法
Apr 24 Python
快速解决pyqt5窗体关闭后子线程不同时退出的问题
Jun 19 Python
详解Python 调用C# dll库最简方法
Jun 20 Python
python读写配置文件操作示例
Jul 03 Python
Python绘制频率分布直方图的示例
Jul 08 Python
python Django 反向访问器的外键冲突解决
May 20 Python
pycharm 使用tab跳出正在编辑的括号(){}{}等问题
Feb 26 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
Oracle Faq(Oracle的版本)
2006/10/09 PHP
global.php
2006/12/09 PHP
ThinkPHP的MVC开发机制实例解析
2014/08/23 PHP
php 使用array函数实现分页
2015/02/13 PHP
一个cssQuery对象 javascript脚本实现代码
2009/07/21 Javascript
JavaScript加强之自定义event事件
2013/09/21 Javascript
JS 打印界面的CSS居中代码适用所有浏览器
2014/03/19 Javascript
js的toUpperCase方法用法实例
2015/01/27 Javascript
JavaScript显示当前文档最后修改日期的方法
2015/03/19 Javascript
jQuery寻找n以内完全数的方法
2015/06/24 Javascript
JavaScript希尔排序、快速排序、归并排序算法
2016/05/08 Javascript
node.js从数据库获取数据
2016/05/08 Javascript
Bootstrap源码解读表单(2)
2016/12/22 Javascript
实例分析nodejs模块xml2js解析xml过程中遇到的坑
2017/03/18 NodeJs
基于vue.js无缝滚动效果
2018/01/25 Javascript
react build 后打包发布总结
2018/08/24 Javascript
Echart折线图手柄触发事件示例详解
2018/12/16 Javascript
Vue 3.0双向绑定原理的实现方法
2019/10/23 Javascript
JavaScript队列结构Queue实现过程解析
2020/03/07 Javascript
vue如何搭建多页面多系统应用
2020/06/17 Javascript
python list使用示例 list中找连续的数字
2014/01/27 Python
Flask的图形化管理界面搭建框架Flask-Admin的使用教程
2016/06/13 Python
Python3.6安装及引入Requests库的实现方法
2018/01/24 Python
浅谈Pandas:Series和DataFrame间的算术元素
2018/12/22 Python
Python绘制热力图示例
2019/09/27 Python
Python 调用 ES、Solr、Phoenix的示例代码
2020/11/23 Python
ghd澳大利亚官方网站:英国最受欢迎的美发工具品牌
2018/05/21 全球购物
英国著名书店:Foyles
2018/12/01 全球购物
金鑫耀Java笔试题
2014/09/06 面试题
爱情寄语大全
2014/04/09 职场文书
我的中国梦演讲稿800字
2014/08/19 职场文书
奥巴马经典演讲稿
2014/09/13 职场文书
公司地址变更通知
2015/04/25 职场文书
公司备用金管理制度
2015/08/04 职场文书
CSS极坐标的实例代码
2021/06/03 HTML / CSS
Python jiaba库的使用详解
2021/11/23 Python