西拉免费代理IP

你当前的位置:西拉免费代理IP   >   新闻中心   >   什么是单列(singleton)?

什么是单列(singleton)?

来源: 西拉IP   作者: 张祁无   2018年12月11日 14:36

单例 是一个类,它只允许创建自身的单个实例,并允许访问该创建的实例。它包含可以容纳自身的唯一和私有实例的静态变量。当用户想要将类的实例化限制为仅一个对象时,它用于场景中。当需要单个对象来协调系统中的操作时,这通常很有用。

单例模式用于编程语言(如Java和.NET)以定义全局变量。跨系统使用的单个对象保持不变,只需定义一次而不是多次。

什么是单列(singleton)?

单例旨在提供自身的一个实例,同时促进全局访问点。实现单例模式涉及使用创建类的新实例的方法创建类。为了实现单例模式,必须满足单实例和全局访问的原则。单例类就像是自身实例的全局存储库,使构造函数变为私有。因此,根本无法创建类外部的实例,并且单例只能包含一个实例。单例类实例化自身并跨系统维护该实例。

抽象工厂,建造者和原型模式可以使用单身人士。外墙物体和静态物体通常是单体。Singleton实现需要一种机制,通过该机制可以访问类成员,而无需创建类对象并保持类对象中类成员的值。创建单例的步骤如下:

1、构造函数是私有的。这允许只有类才能访问单例。

示例:

class testdata
{ Private testdata()
{
// ... no-op for singleton

2、使用方法创建类的单个内部实例。在此示例中,该方法称为实例。方法“instance”用于初始化类以访问单个实例。在此示例中,instance方法被标记为static,以便为所有线程提供一致的访问权限。在实例创建之外,“lock”语句用于控制多线程访问。这会将实例创建锁定到单个线程。

示例:

//懒惰创建单例内部实例
公共静态testdata实例
{
Get
{
Lock(type(of testdata))
{ If(_instance == null)
_instance = testdata();
}
返回_instance;
}
}

阅读 418   

相关推荐

什么是文件传输协议(FTP) 什么是文件传输协议(FTP)
什么是文件传输协议(FTP)

文件传输协议(FTP)是一种客户端/服务器协议, 用于将文件传输到主机或与主机交换文件。它可以使用用户名和密码进行身份验证。匿名FTP允许用户从Internet访问文件,程序和其 . . .

2018年12月12日
临时服务器是什么? 临时服务器是什么?
临时服务器是什么?

临时服务器也是一种服务器 ,用于在生产设置之前在类似生产的环境中测试软件,网站或服务。它是暂存环境或暂存站点的一部分,可用作任何新软件或网站的临时托管和测试服务器。 . . .

2018年12月12日
什么是转码?? 什么是转码??
什么是转码??

转码是将文件从一种编码格式转换为另一种编码格式的过程。 这允许将不兼容的数据转换为更好支持的,更现代的数据形式。如果目标设备不支持格式或仅具有有限的存储能力,则通常执行代码转换。 . . .

2018年12月12日
定义 - 6to4是什么意思? 定义 - 6to4是什么意思?
定义 - 6to4是什么意思?

6to4是 IP v4到IPv6的迁移方案, 也是将网络基础设施从IPv4转移到IPv6的解决方案之一。6to4的基本概念与隧道非常相似,但在6to . . .

2018年12月11日
什么是超文本传输​​协议(HTTP)? 什么是超文本传输​​协议(HTTP)?
什么是超文本传输​​协议(HTTP)?

定义 - 超文本传输​​协议(HTTP)是什么意思? 超文本传输​​协议(HTTP) 是主要在万维网上使用的应用层协议。HTTP使用客户端 - 服务器模型,其中 . . .

2018年12月11日
什么是Smurf攻击? 什么是Smurf攻击?
什么是Smurf攻击?

定义 - Smurf Attack的意思是什么? smurf攻击 是一种拒绝服务攻击,其中系统充斥着欺骗性ping消息。这会在受害者的网络上创建高计算机网 . . .

2018年12月11日
基于访客的网络(VBN)

定义 - 访客网络(VBN)是什么意思? 基于访客的网络(VBN)有助于临时移动设备用户访问高速互联网或基于互联网的以太网局域网(LAN)。VBN通常用于大学,办公室,会议室 . . .

2018年12月11日
80端口是什么

定义 - 端口80的含义是什么? 端口80是分配给常用因特网通信协议超文本传输​​协议(HTTP)的端口号。它是计算机从Web服务器发送和接收基于Web客户端的通信和 . . .

2018年12月10日
简单网络管理协议(SNMP)

定义 - 简单网络管理协议(SNMP)是什么意思? 简单网络管理协议(SNMP)是一组用于网络管理和监控的协议。许多典型的网络设备支持这些协议,例如路由器,集线器,网 . . .

2018年12月10日
程序员依然是这个时代,贫寒学子翻身的不二选择 程序员依然是这个时代,贫寒学子翻身的不二选择
程序员依然是这个时代,贫寒学子翻身的不二选择

作者岳京杭,湖南人、北邮硕士。曾北漂8年,后跑路杭州,通信从业多年、后转行互联网,先后经历三星电子、百度等公司,目前从事人工智能相关开发工作。本号以技术人的角度,探讨行业动态,职场见闻,转行路 . . .

2018年12月10日

新闻中心 代理分享 | 蜘蛛地图

全网最大的免费网页代理ip平台,提供大量免费http代理服务器免费ip代理地址

© 2016 - 2021. 西拉免费代理ip, All rights reserved. 鄂ICP备18017015号-4

在线客服