`

小知识点-第一讲

 
阅读更多

大家都知道 单例模式,平时开发中最常见的设计模式之一。它是一种对象创建模式,确保系统中一个类只有一个实例。好处:

1 对于频繁使用的对象,可以省略创建对象所花费的时间。

2 new 操作的次数减少,对系统内存的使用频率也会降低,减轻gc压力。

 

常用的方式无非两种:

 

  1  种加载类时初始化单例类,另一种采用同步机制,判断是否已经初始化,没有则进行初始化否则放回单例类对象,各有各的好处与不妥。

 

为了能够比如单例类载入内存时不初始化单例对象,并且还不用引入同步关键字降低系统性能,采用内部类来维护单例的实例。看看简单代码即可知道。

 

public class Singletion{

private Singletion(){

System.out.println("create");

}

private static class SingleonHolder{

private static final Singletion instance = new Singletion();

}

 

public static final Singletion getIntance(){

return SingleonHolder.instance;

}

 

}

 

当然单例也可以创建出多个实例对象,比如:反射的方式能创建(不想被创建,可以通过构造函数进行控制),真正单例;枚举类。

分享到:
评论

相关推荐

    企业信息化与知识工程-第04讲.ppt

    【企业信息化与知识工程-第04讲】的讲解主要聚焦于项目管理这一主题,它涵盖了项目管理的基础概念、核心人物、关键阶段、管理领域以及监控方法等多个方面。以下是相关知识点的详细阐述: 1. **项目管理定义**:项目...

    新东方线性代数笔记--第一讲_行列式--李永乐.pdf

    新东方线性代数笔记--第一讲_行列式--李永乐.pdf Resources Summary: 新东方 Linear Algebra Notes -- Lecture 1: Determinants -- Li Yongle 本资源为新东方线性代数笔记的第一讲,主要讲解行列式的概念和计算...

    oracle扫盲-第一讲-创建和管理表PPT课件.ppt

    Oracle扫盲-第一讲-创建和管理表PPT课件 本资源主要讲述Oracle数据库管理系统的基本知识,包括创建和管理表的方法、数据类型、CREATE TABLE语句、数据字典等。 知识点1:数据类型 Oracle数据库中有多种数据类型,...

    BUAA-23级-程设-暑假预习资料-第一讲

    【标题】"BUAA-23级-程设-暑假预习资料-第一讲"指出这是一份针对北京航空航天大学(BUAA)23级学生准备的程序设计课程的暑假预习材料,主要关注的第一堂课的内容。这通常意味着学生们将开始接触编程,特别是C语言的...

    高中一年级物理--第一讲--如何准确的描述运动.doc

    高中一年级物理第一讲的核心内容是如何准确地描述物体的运动,主要涉及四个关键概念:位移、路程、平均速度与平均速率、瞬时速度与加速度,以及运动图像的分析与应用。 1. **位移与路程**: - 位移:是从起点到...

    C语言进阶-第一讲概述.pdf

    **知识点生成:** ### C语言进阶:第一讲概述 #### 关于本课程 本课程专为希望深入了解C语言在嵌入式系统中应用的学生设计。C语言因其灵活性和高效性,在嵌入式领域占据重要地位,但同时也因其复杂性和潜在的陷阱...

    Nginx核心知识100讲-第三部分课件.pdf

    Nginx是一款高性能的HTTP和反向代理服务器,也是一个IMAP/POP3/SMTP服务器。... ... 在Nginx配置中,我们经常会使用到log_format指令来定义日志格式。...掌握这些知识点对于Web服务器的日常维护和性能优化至关重要。

    电子-第四讲白驹过隙.pdf

    从给出的信息中,我们可以看出《电子-第四讲白驹过隙.pdf》这一文件的标题和描述都指向单片机及特定的STM32系列。STM32是一个广泛使用的基于ARM Cortex-M处理器微控制器系列,由STMicroelectronics生产。这个系列的...

    电子-第五讲争分夺秒.pdf

    以下是对文件《电子-第五讲争分夺秒.pdf》的内容知识点的详细解读。 标题《电子-第五讲争分夺秒.pdf》暗示了这是一系列关于电子技术或单片机课程中的第五节课,其核心内容可能集中在如何高效、准确地使用单片机和...

    C语言进阶-第2讲C语言复习共25页.pdf.zip

    这通常是一份教程或者课程笔记,涵盖了C语言的深入知识点,可能是对基础概念的巩固或是更高级主题的介绍。 描述同样为"**C语言进阶-第2讲C语言复习共25页.pdf.zip**",进一步确认了内容是关于C语言的复习资料,...

    中学升职业规划-第20讲我的生涯我做主.pdf

    2. 自我认知:职业规划的第一步通常是自我认知,包括了解个人的兴趣、能力和价值观。这部分内容可能涉及到如何使用各种工具和方法帮助学生进行自我评估。 3. 职业信息的收集与分析:学生需要了解不同职业的特点、...

    选修4-5--不等式选讲知识点详解+例题+习题含详细答案.doc

    【知识点详解】 1. 绝对值的几何意义与不等式: 绝对值在数轴上表示一个数到原点的距离,因此,不等式`|a+b|≤|a|+|b|`和`|a-b|≤|a-c|+|c-b|`具有几何意义,意味着在数轴上,两个点的和或差的绝对值不会超过这两...

    2022版新高考数学二轮复习:第一部分-第3讲-复数与平面向量-Word版含解析.doc

    例如,在《2022版新高考数学二轮复习:第一部分-第3讲-复数与平面向量-Word版含解析.doc》文档中,第3讲第3题就涉及了复数除法的计算。考生需要掌握如何将复数的商转化为实数形式,这是解决复数运算问题的关键所在。...

    注册会计师 精品入门班-丁奎山18讲-第7讲_会计基础知识(5).docx

    《注册会计师精品入门班-丁奎山18讲-第7讲_会计基础知识(5)》的课程内容主要涵盖了会计中的关键概念,如货币时间价值和增值税的计算与应用。这部分知识是会计学的基础,对于理解和处理企业的财务事务至关重要。 ...

    第1讲基本知识点(一).pdf

    第1讲基本知识点(一).pdf

    HCIE-RS V3.0培训视频教程【共29集】.rar

    第1讲-VXLAN的基础-VXLAN的由来和VXLAN报文 第2讲-VXLAN的接口流封装类型 第3讲-集中式网关-多活网关配置 第4讲-防火墙基础-源NAT和目的NAT配置 第5讲-集中式网关+FW部署VRF间的通信 第6讲-VXLAN-静态VXLAN隧道+...

    计算机图形学--第四讲 区域填充算法.pdf

    ### 计算机图形学——第四讲 区域填充算法 #### 一、课程概览与基础知识 **任课教师:** 李陶深教授 **邮箱:** tshli@gxu.edu.cn 本课程主要围绕计算机图形学中的一个重要主题——区域填充算法展开。通过这一讲...

Global site tag (gtag.js) - Google Analytics