美文网首页
简述Python中多态,继承,封装,propertyy

简述Python中多态,继承,封装,propertyy

作者: 风舞柏杨 | 来源:发表于2018-05-09 19:53 被阅读0次

多态

1. python有多态,但是不是一个严谨的多态,因为Python是一个动态语言,没有强制类型

封装

一个函数一个功能,一个类是多个相关函数的集合

继承

子类中相同的方法会放到父类中,减少代码重复性

mro 及多继承

mro类初始化顺序表,保持我们的类只初始化一次
super()从mro顺序表中找到自已的位置,从mro顺序表中调用下一个类

实例与类之间的调用关系

实例可以调用三种类型的方法(静态,类,实例),可以调用类的属性及自我的属性
类可以调用三种类型的方法(静态,类,实例),但是不能调用实例上的属性
1.png

property

1. 完成常量,常量是能得到到数据,但是不能修改数据,一般常量都是大写
2. 代码实现
    这个常量一般在init中创建一个私有的属性
    提供一个得到这个私有属性的方法,但是我们为了让常量更直观,在方法上加入装饰器@property
    调用就可以使用(类名.方法名)
2.png

魔法属性与方法

__dict__:查看属性
__class__:查看谁创建了我

__init__:初始化
__new__:创建时,一般单例
__call__:实例()调用

上下文管理器

只要实现了__init__ ,__enter__,__exit__这三个方法就可以说实现了上下文管理器
1.简化了代码
2.程序退出时自动关闭
3.操作时出现异常也会自动关闭

with myopen() as f:
    pass
myopen()这个调用__init__方法
as 后面的f由__enter__这个方法返回
程序执行完后退出我们会执行__exit__,一般用来关闭资源

相关文章

  • 简述Python中多态,继承,封装,propertyy

    多态 封装 继承 mro 及多继承 实例与类之间的调用关系 property 魔法属性与方法 上下文管理器

  • Python面向对象-多态

    面向对象的三大特性 封装 继承 多态 python学习过程中,封装继承将随处可见,但却很少遇见多态,那么pytho...

  • python面向对象特性之封装

    面向对象——封装 一、概述 Python面向对象的三大特性:封装、继承和多态。 封装:在类中对数据的赋值、内部调用...

  • Python面向对象封装

    面向对象——封装 一、概述 Python面向对象的三大特性:封装、继承和多态。 封装:在类中对数据的赋值、内部调用...

  • 小白学python之☞面向对象

    首先来说,python是一门面向对象的语言,所以封装、继承、多态自然就不必多说了(不明白啥是封装、继承、多态的同学...

  • Python中面向对象的第二大特征——继承

    Python中面向对象有三大特征:封装,继承,多态 今天就说说面向对象中的第二大特征——继承 一丶什么是继承 ...

  • iOS开发之一OC语言的特性

    三大特性:封装、继承、多态 一、封装(成员变量的封装) 二、继承 三、多态(多种形态)

  • python三大特性

    python中也有三大特性,封装、继承和多态。 封装 封装,就是只能在类的内部访问,外部访问属性或方法会报异常,p...

  • 26.Python之面向对象的三大特性(继承、封装、多态)

    Python之面向对象的三大特性(继承、封装、多态) 继承与派生继承继承是一种新建类的方式,在Python中支持一...

  • day3-python3类

    今天了解了python3中的面向对象编程 包括: 属性和封装 继承和多态 获取对象信息 练习代码链接:python...

网友评论

      本文标题:简述Python中多态,继承,封装,propertyy

      本文链接:https://www.haomeiwen.com/subject/hjvorftx.html