栏目分类:
子分类:
返回
名师互学网用户登录
快速导航关闭
当前搜索
当前分类
子分类
实用工具
热门搜索
名师互学网 > IT > 软件开发 > 后端开发 > Python

Python-

Python 更新时间: 发布时间: IT归档 最新发布 模块sitemap 名妆网 法律咨询 聚返吧 英语巴士网 伯小乐 网商动力

Python-

__new__()的介绍

__new__()是Python中的一个魔术方法(构造方法)。它会在创建类的时候,先于__init__()执行。__new__()会在内存中开辟地址,然后传给__init__()。

__new__()作用 单例模式

什么是单例模式?

单例模式(Singleton Pattern)是一种简单的设计模式。其主要解决的问题是一个全局使用的类被重复地创建,从而占用大量内存。

当一个类需要提供比较通用的功能,且代码里有很多地方需要使用到它,则可以使用单例模式来避免创建多个重复的实例,节约系统资源。

其实现的逻辑是:判断系统是否已经有这个单例,如果有则返回,如果没有则创建。

示例

class Singleton():
    __instance = None
    def __new__(cls):
        if cls.__instance is None:
            cls.__instance = super().__new__(cls)
            return cls.__instance
        else:
            return cls.__instance

object1 = Singleton()
object2 = Singleton()

object1.name = 'oneSingleton-liqi'

print(object1.name, object2.name)
print(object1 is object2)

---------------
输出:
oneSingleton-liqi oneSingleton-liqi
True

转载请注明:文章转载自 www.mshxw.com
本文地址:https://www.mshxw.com/it/700825.html
我们一直用心在做
关于我们 文章归档 网站地图 联系我们

版权所有 (c)2021-2022 MSHXW.COM

ICP备案号:晋ICP备2021003244-6号