• [ python ] 类和实例


    1) python支持多继承。 如果两个超类有相同的方法,那么哪个类在前,就使用哪个的方法,另一个类的方法会被屏蔽。

    2) 调查继承。issubclass(subclass,superclass)可以判断subclass是否superclass的子类。

    3) 调查超类。通过subclass.__bases__ 可以得到subclass的超类组成的列表。因为python是支持多继承的,所以超类可能有多个。

    4) 查检对象是否某个类的实例。isinstance(s,subclass)、isinstance(s,superclass)。 注意,instance()方法是可以往上追朔的。如果只能知道某对象属于哪个类(不算超类),可以使用s.__class__属性。另外,type()方法也可以帮助查看对象的类型。

    5) 类变量和实例变量。python中的类变量有点奇怪,如果实例中没有设置同名的实例变量,那么默认其同名实例变量值为类变量的值。但只可读,不可改。如果修改,只会改自己的实例变量,影响不到类变量。

    6) python事实上并不真正支持私有变量。其私有变量是通过在方法名前加双下划线来实现的,虽然无法在实例中直接访问,但事实上python只是将所有以__为前辍的方法将其方法名变成了_类名_方法名的形式,只是个魔法,并非真的让其私有了,通过_类名_方法名还是可以访问到的。另外,__过于强制了,还可以像js一样,通过_这样的“约定”来让人知道它是个私有属性,但其实它还是可以被访问的,只是在from 模块名 import *的时候,带单下划线的方法不会被导入。(这点比js还是强些)

  • 相关阅读:
    SIP语音对讲从零到整之(二)resiprocate编译(Linux,库用于Android)
    Intel Media SDK decode_sample剖析(一)——初始化及解码数据头
    Hadoop-HA集群搭建-rehl7.4
    (1)jmeter录制脚本(使用代理的方式)
    Java自动化环境搭建笔记(3)
    Java自动化环境搭建笔记(1)
    ant安装(Windows)
    jmeter源码环境(IDEA)
    离线安装docker(RedHat7.4)
    PostgreSQL日志分析工具
  • 原文地址:https://www.cnblogs.com/cly84920/p/4426723.html
Copyright © 2020-2023  润新知