zoukankan      html  css  js  c++  java
  • [ 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还是强些)

  • 相关阅读:
    DOCK-SWARM
    springMVC上传和下载文件
    生成任意内容任意类型的文件
    配置监听(系统启动和关闭时运行的程序)
    配置过滤器
    读取文件内容(TXT之类的文件)
    读取properties文件中的内容
    时间戳转时间字符串和时间
    启动Service的时候报错unable to install breakpoint in
    java后台调用接口并获取返回值
  • 原文地址:https://www.cnblogs.com/cly84920/p/4426724.html
Copyright © 2011-2022 走看看