面向对象

面向对象三大特性:封装,继承,多态 

封装:根据职责将属性和方法封装到一个抽象的类中

继承: 实现代码的重用,相同的代码不需要重复的编写

多态:不同的子类对象调用相同的父类的方法,产生不同的结果


两个重要的概念: 类和对象    类是具有相同特征和行为事物的统称,具有相似内部状态和运动规律的实体的集合 。对象是某一具体事物的存在,可以直接使用的。

类由类名,类属性,类方法三部分构成  定义类时 class 类名(object): 为新式类  不加object为经典类,类名的命名规则按照“大驼峰”规则命名,单词首字母大写。

对象的格式为: 对象名 = 类名()   在创建对象中,  魔法方法—init—方法是默认执行的,在init方法中可以直接设置对象的属性。

—str—也是魔法方法,它的作用是当使用print输出对象时,只要定义了str方法,那么就会打印从这个方法中return的数据。

如果有一个对象,当需要对其进行修改属性时,有两种方法 : 1:对象名.属性名 = 数据 (直接修改) 2:对象名.方法名()  ---(间接修改)   为了更好的保护属性安全 可以将属性定义为私有属性,然后添加一个可以调用的方法供调用  注:私有属性时给属性前加两个—

创建对象后,python解释器默认调用init方法,当删除一个对象时,python解释器也会默认调用一个方法,这个方法为del()方法, del方法 程序结束后自动会调用

单继承 :在程序中,继承描述的是事物之间的所属关系,在定义类时,第一个类为基类,继承自object,子类继承父类时须在变量名后括号里写上父类名,父类的属性,方法都会继承给子类   但是注意:不能访问父类中的私有属性和方法。

多继承: 即子类有多个父类,并具有它们的特征 。多继承是在子类变量名后括号里写上多个父类名。

重写: 子类中,有一个和父类相同名字的方法,在子类中的方法会覆盖掉父类中同名的方法。如果想调用父类方法就要用到super().函数

我们通常也会把创建出来的对象叫做类的实例,创建对象的动作叫做实例化。对象的属性叫做实例属性,对象调用的方法叫做实例方法。  每一个对象都有自己独立的内存空间,保存各自不同的属性。多个对象的方法,在内存中只有一份,在调用方法时,需要把对象的引用传递到方法内部。

在python中,类是一个特殊的对象———类对象 类对象在内存中只有一份,使用一个类可以创建出很多个对象实例。类对象还拥有自己的属性和方法:类属性和类方法。 通过类名.的方式可以访问类属性或调用类方法。

在python中属性的获取存在一个向上查找机制,首先在对象内部查找对象属性,没有找到就会向上寻找类属性

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
【社区内容提示】社区部分内容疑似由AI辅助生成,浏览时请结合常识与多方信息审慎甄别。
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

相关阅读更多精彩内容

  • 国家电网公司企业标准(Q/GDW)- 面向对象的用电信息数据交换协议 - 报批稿:20170802 前言: 排版 ...
    庭说阅读 12,448评论 6 13
  • 1 面向对象No6 面向对象 OO Object Oriented 编程时以对象为单元,封装数据和逻辑,以此提...
    征程_Journey阅读 1,262评论 0 2
  • Python 面向对象Python从设计之初就已经是一门面向对象的语言,正因为如此,在Python中创建一个类和对...
    顺毛阅读 4,371评论 4 16
  • 今天下了雪子,天气状况不好,但我们组成员依然坚持实习没有迟到,上午我们布置了小小银行家的各个游戏的人员安排,下午我...
    邯轶阅读 243评论 0 0
  • 乌云裹着雷声 昏暗碾压过村庄 雨,从天空滚落下来 奶奶说 以前,一下雨就害怕 要么床塌了,要么屋倒了 妈妈说 现在...
    梅小言阅读 158评论 0 0

友情链接更多精彩内容