• python 学习(二)--关于类


    1、没有权限控制,在类方法或变量前加 "__" 两下划线,则变为“私有”变量(实际通过_<类名>__<变量或方法名> 可以访问)

    2、类的若干自动触发的内置方法:

    • __new__(cls[, ...])      //该方法返回一个本类的实例,传入的参数会原封不动传递给 __init__() 方法. 该方法一般在继承一个不可修改的类时使用,例如 str

    class CapStr(str):

      def __new__(cls, string):

        string = string.upper()

        return str.__new__(cls, string)

    a = CapStr("I love you");

    • __init__(self[, ...])     //该方法在实例创建后最早被调用,用于初始化对象

    class Rectangle:

      def __init__(self, x, y):

        self.x = x

        self.y = y

      def getPeri(self):

        return(self.x + self.y)*2

    aa=Rectangle(3, 4);

    aa.getPeri()

    • __del__(self)   //该方法在类实例被释放,最后垃圾回收的时候才被触发

    c1=C()

    c2=c1

    c3=c2

    del c3   //不会被触发

    del c2  //不会被触发

    del c1  //全部引用消除,触发 __del__

    • __add__(self,other) //两个类相加时触发
    • __sub__(self,other) //两个类相减时触发
    • __mul__(self,other) //乘法触发
    • __truediv__(self,other) //真除法
  • 相关阅读:
    oracle 编译无效对象
    nginx配置监控
    Docker底层技术
    KVM入门
    maven 忽略checkstyle
    Java 使用 UnixSocket 调用 Docker API
    unix-socket-implementation-for-java
    NVIDIA Physix Unity3D
    Mobile Prototype Dev Res Collection(Unity原型开发资源储备)
    Unity抗锯齿
  • 原文地址:https://www.cnblogs.com/zhenfei/p/6241523.html
Copyright © 2020-2023  润新知