java单例模式_Java单例模式

java单例模式_Java单例模式单例(Singleton)模式是Java中最简单的设计模式之一。这种类型的设计模式属于创建模式,因为此模式提供了创建对象的最佳方法之一。这种模式涉及一个类,它负责创建一个对象,同时确保只创建一个对象。这个类提供了一种方法来访问它的唯一对象,可以直接访问,而不需要实例化类的对象。实现实例我们将创建一个单一对象类-SingleObject。单个对象(SingleObject)类的构造函数是私有的,…

大家好,又见面了,我是你们的朋友全栈君。

单例(Singleton)模式是Java中最简单的设计模式之一。这种类型的设计模式属于创建模式,因为此模式提供了创建对象的最佳方法之一。

这种模式涉及一个类,它负责创建一个对象,同时确保只创建一个对象。这个类提供了一种方法来访问它的唯一对象,可以直接访问,而不需要实例化类的对象。

实现实例

我们将创建一个单一对象类 – SingleObject。单个对象(SingleObject)类的构造函数是私有的,并且具有自身的静态实例。

SingleObject类提供了一个静态方法来获取其静态实例到外部世界。SingletonPatternDemo或示例类将使用SingleObject类来获取SingleObject对象。

3c3e4a46dc414477306142eb1ab0c8d9.png

第1步

创建一个Singleton类,

SingleObject.java

public class SingleObject {

//create an object of SingleObject

private static SingleObject instance = new SingleObject();

//make the constructor private so that this class cannot be

//instantiated

private SingleObject(){}

//Get the only object available

public static SingleObject getInstance(){

return instance;

}

public void showMessage(){

System.out.println(“Hello World!”);

}

}

第2步

从单例类中获取唯一的对象。

SingletonPatternDemo.java

public class SingletonPatternDemo {

public static void main(String[] args) {

//illegal construct

//Compile Time Error: The constructor SingleObject() is not visible

//SingleObject object = new SingleObject();

//Get the only object available

SingleObject object = SingleObject.getInstance();

//show the message

object.showMessage();

}

}

第3步

验证输出,得到结果如下 –

Hello World!

¥ 我要打赏

纠错/补充

收藏

加QQ群啦,易百教程官方技术学习群

注意:建议每个人选自己的技术方向加群,同一个QQ最多限加 3 个群。

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请联系我们举报,一经查实,本站将立刻删除。

发布者:全栈程序员-站长,转载请注明出处:https://javaforall.net/156927.html原文链接:https://javaforall.net

(0)
上一篇 2022年7月8日 下午2:36
下一篇 2022年7月8日 下午2:36


相关推荐

  • 稀疏数组及其应用

    稀疏数组及其应用上图左侧是一个 11 11 的棋盘 目前棋盘上有两个棋子 一黑一蓝 如果要求把此时棋盘的状态保存起来 存盘退出 该如何做 即此时已经把稀疏数组进行了存盘操作 当然是使用如上图右侧的一个 11 11 的二维数组 把磁盘记录下来 其中 1 表示黑子 2 表示蓝子 sparse 英 sp s adj 稀少的 至此成功解析硬盘文件 恢复成稀疏数组 如上图的第二行表示原始数组中第一行第四列的数据为 22 如上图的第一行表示 原始数组为 6 行 7 列共 8 个非零值 要把棋盘转化为同样大小的二维数组并没有难度

    2026年3月18日
    2
  • Xmind软件 2020最新安装教程讲解

    Xmind软件 2020最新安装教程讲解Xmind2020 最新安装教程 1 首先需要下载 Xmind 软件 百度网盘链接附上 2 安装步骤直接就是双击下载好的软件安装即可 3 安装成功后找到 xmind 安装目录下的 resource 目录替换 app asar 文件 4 替换成功后打开软件查看是否还有试用版字样 Xmind2020 版本激活成功教程版 亲测真实有效 我看了许多软件大部分要钱 要不然就是下载一堆垃圾软件 根本就解决不了问题 1 首先需要下载 Xmind 软件 百度网盘链接附上 百度网盘链接链接 https pan baidu com s 1

    2026年3月17日
    2
  • Android系统APN配置具体解释

    Android系统APN配置具体解释

    2022年1月4日
    40
  • linux使用ps命令查看和控制进程_ps grep 进程

    linux使用ps命令查看和控制进程_ps grep 进程ps命令Linuxps(英文全拼:processstatus)命令用于显示当前进程的状态,类似于windows的任务管理器查看所有进程ps-A显示所有进程信息,连同命令行ps-

    2022年7月29日
    11
  • readprocessmemory函数库_read_csv函数

    readprocessmemory函数库_read_csv函数ReadProcessMemory函数ReadProcessMemory函数功能描述:该函数用来读取指定进程的空间的数据,此空间必须是可以访问的,否则读取操作会失败!函数原型BOOLReadProcessMemory(HANDLEhProcess,//目标进程句柄LPCVOIDlpBaseAddress,//读取数据的起始地址LPVOIDlpBuffer,//存放数据的缓存区地址DW…

    2022年10月5日
    3
  • 毫无头绪的自学Python,你可能连门槛都摸不到![通俗易懂]

    毫无头绪的自学Python,你可能连门槛都摸不到![通俗易懂]目前的IT行业发展日趋迅猛,IT产业的产值成倍增长,不少人都打算从零基础开始学习python。对于零基础的初学者来说,最迷茫的是不知道怎样开始学习?那这里小编为大家规划了一条零基础自学必看pyth

    2022年7月3日
    27

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

关注全栈程序员社区公众号