zoukankan      html  css  js  c++  java
  • Python面向对象总结

    python 面向对象(oop)

    1、面向对象:是一个更大封装,把一个对象封装多个方法

    2、类:是对一些具有相同特征或行为的事物的一个统称,是抽象的,不能直接使用

      特征被称为属性  行为被称为方法

    3、对象:是由类创建出来的一个具体的存在,可以直接使用

      先有类再有对象,类只有一个,而对象可以有多个

      类中定义了什么属性和方法,对象就有什么属性和方法,不可能多也不可能少

    4、定义类

      class 类名:

        def 方法1(self,参数列表):

            pass

        def 方法2(self,参数列表):

            pass

    5、创建对象

      对象变量名 = 类名()

    6、初始化方法

      __init__   方法是专门用来定义一个类具有哪些属性的方法

      创建对象时会被自动调用

    7、dir() 函数

      --new-- 创建对象时会被自动调用

      --del--对象被从内存中销毁前会被自动调用

      --str--返回对象的描述信息,用print()函数输出使用

    8、面向对象的三大特性

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

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

      多态:不同的对象调用相同的方法,产生不同的结果,增加代码的灵活度

    9、继承

      class 类名(父类名):

          pass

      子类继承父类,可以直接享受父类中已经封装好的方法,不需要再次开发,根据自己所需封装子类特有的属性和方法

      在子类中重写父类的方法在需要的位置使用supper().父类方法来调用父类方法的执行

    10、多继承

      子类可以拥有多个父类,并且具有所有父类的属性和方法

      __mro__可以查看继承的先后顺序

    11、多态 

      不同的子类对象调用相同的父类方法,产生不同的执行结果

    12、 魔法方法

      --repr-- 在解释器环境下直接输出本对象,自动调用的方法

      --len-- 调用len()函数的时候自动调用的方法

      --call--调用本类对象的时候自动调用的方法

    13、枚举法

      from enum import Enum,unique

      @ unique # 防止枚举成员的重复

      class Menu(Eunm):

        INSERT = 1

                   APPEND = 2

      print(Menu.INSERT.value)

      print(Menu.INSERT.value == 1)

      print(Menu["INSERT"])

  • 相关阅读:
    ORACLE 闪回命令 sql语句
    OBControl v1.1 (控件集)delphi控件下载
    Delphi 从tnsnames.ora文件中获取Oracle服务名
    中台添加Oracle数据库日期触发器
    解析新零售,互联网大数据时代的到来
    Catic
    系统交付终极手册
    React Suite v3.0 正式版发布
    【505】NLP实战系列(二)—— keras 中的 Embedding 层
    【504】NLP实战系列(一)—— one-hot encoding
  • 原文地址:https://www.cnblogs.com/Qingxiaoyu/p/10133719.html
Copyright © 2011-2022 走看看