zoukankan      html  css  js  c++  java
  • python面向对象编程(1)——基本概念,术语,self,构造器

    1  python面向对象命名规范

    类名通常由大写字母打头。这是惯例标准。

    数据值应该使用名词作为名字,方法使用动词加对象的方式,若使用混合记法,则方法名的第一个字母首字母小写,后面的单词的首字母大写。若使用骆驼记法,则方法名的组成单词之间用下划线连接。


    2  相关术语

    抽象/实现:建模,包括数据属性和数据的接口。

    封装/接口:描述了对数据/信息进行隐藏的观念,它对数据属性提供接口和访问函数。

    合成

    派生/继承/集成结构

    泛化和特化


    3  实例属性 和 类属性

    不同于C++和Java,Pthon的实例属性可以在实例创建后的任意时间进行,也可以在能偶访问实例的代码中进行。__init()__是设置这些属性的关键点之一。

    • 在构造器中首先设置实例属性
    • 默认参数提供默认的实例安装(对方法的参数设定默认值)

    __init()__应当返回None。


    类属性仅是与类相关的数据值,和实例属性不同,类属性和实例无关。这些属性就像静态成员那样被引用,即使在多次实例化中调用类,它们的值都保持不变。即,类和实例都是名字空间,类是类属性的名字空间,实例则是实例属性的名字空间。


    若修改类属性,则会影响之后所有创建的实例的属性,但不会影响之前创建的实例。


    任何一个方法定义中的第一个参数都是变量self,它表示调用此方法的实例对象。必须在方法声明中放上self,但可以在方法的使用中不使用self。

    对于类方法而言,需要类而不是实例作为第一个参数,它是由解释器传给方法。


    4  如果需要,每个子类最好定义它自己的构造器,不然,基类的构造器会被调用。

        如果子类重写了构造器,则如果仍想执行基类的构造器,就需要显示地在子类的构造器中写出。



  • 相关阅读:
    TensorFlow实现LeNet5模型
    jmeter+influxdb+grafana性能测试可视化报告
    jmeter命令执行脚本
    jmeter JSON Extractor使用
    jmeter上传文件
    jenkins登录信息无效,忘记密码
    XML
    JMeter函数和变量
    jmeter配置CSV Data Set Config
    jmeter发送Query String Parameters格式参数报错
  • 原文地址:https://www.cnblogs.com/suzhou/p/3638979.html
Copyright © 2011-2022 走看看