zoukankan      html  css  js  c++  java
  • 单例

     1 class MediaPlayer(object):
     2     # 定义类属性记录单例对象引用
     3     instance = None
     4 
     5     # 定义对象初始化记录标记
     6     init_flag = False
     7 
     8     def __new__(cls, *args, **kwargs):
     9 
    10         # 判断单例对象是否引用过
    11         if cls.instance is None:
    12 
    13         # 2.如果没引用则引用
    14             cls.instance = super().__new__(cls)
    15 
    16         #返回记录结果
    17         return cls.instance
    18 
    19     def __init__(self):
    20         # 判断初始化记录,如果为True则返回
    21         if MediaPlayer.init_flag:
    22             return
    23 
    24         # 如果为False则初始化
    25         print("初始化播放器")
    26 
    27         # 修改初始化记录标记
    28         MediaPlayer.init_flag = True
    29 
    30 player1 = MediaPlayer()
    31 player2 = MediaPlayer()
    32 
    33 print(player1)
    34 print(player2)
    初始化播放器
    <__main__.MediaPlayer object at 0x00000203A0C45128>
    <__main__.MediaPlayer object at 0x00000203A0C45128>
    

      

  • 相关阅读:
    utils04_搭建私有Git服务器
    utils03_clone远程仓库
    java 22
    java 22
    java 22
    java 22
    java 22
    java 22
    java 22
    java 22
  • 原文地址:https://www.cnblogs.com/yifengs/p/11345736.html
Copyright © 2011-2022 走看看