zoukankan      html  css  js  c++  java
  • 内置方法

    类的内置方法(魔法方法):

    凡是在类内部定义,以__开头__结尾的方法,都是类的内置方法,也称之为魔法方法。

    类的内置方法,会在某种条件满足下自动触发。

    内置方法如下:

    __new__:在__init__触发前,自动触发。调用该类时,内部会通过__new__产生一个新的对象。

    __init__:在调用类时自动触发。通过产生的对象自动调用__init__()




    单例模式

    import settings


    # 通过classmethod
    class MySQL:

    # 一个默认值,用于判断对象是否存在, 对象不存在证明值是None
    # __instance是类的属性,可以由类来调用
    __instance = None # ---》 执行到代码的57行 ---》 obj
    # __instance = obj

    def __init__(self, host, port):
    self.host = host
    self.port = port

    @classmethod
    def singleton(cls, host, port): # 单例方法 ---》 类方法

    # 判断__instance中若没有值,证明没有对象
    if not cls.__instance:
    # 产生一个对象并返回
    obj = cls(host, port)
    # None ---> obj
    cls.__instance = obj

    # 若__instance中有值,证明对象已经存在,则直接返回该对象
    return cls.__instance

    def start_mysql(self):
    print('启动mysql')

    def close(self):
    print('关闭mysql')


    obj1 = MySQL.singleton(settings.HOST, settings.PORT)
    print(obj1)
    obj2 = MySQL.singleton(settings.HOST, settings.PORT)
    print(obj2)
  • 相关阅读:
    php升级5.3到5.4,5.5,5.6
    JNI NDK开发Crash错误定位 调试
    【转】移动端App测试实用指南
    【转】web测试内容及工具经典总结
    什么是比特币(bitcoin)
    读《活着》
    读《我们终将逝去的青春》
    自动make工具--CMake
    如何像黑客一样思考_转
    httpd在嵌入式中应用
  • 原文地址:https://www.cnblogs.com/medigrat/p/11957969.html
Copyright © 2011-2022 走看看