Singleton模式是创建模式。

这种模式只涉及一个类是负责创建自己的对象。

该类确保只有一个对象获得创建。

这个类提供了一种方法来访问它的唯一对象。

例如,当设计一个用户界面,我们只能有一个主应用程序的窗口。我们可以使用Singleton模式,以确保有是MainApplicationWindow对象的一个​​实例。

下面的代码将创建一个主窗口类。

MainWindow类有其私有的构造,并有其自身的静态实例。

主窗口类提供了一个静态方法来获取其静态实例外面的世界。

我们的演示类将使用主窗口类来获得一个主窗口对象。

class MainWindow {

//create an object of MainWindow

private static MainWindow instance = new MainWindow();

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

//instantiated by other class

private MainWindow(){}

//Get the only object available

public static MainWindow getInstance(){

return instance;

}

public void showMessage(){

System.out.println("Hello World!");

}

}

public class Main {

public static void main(String[] args) {

//Get the only object available

MainWindow object = MainWindow.getInstance();

//show the message

object.showMessage();

}

}

感谢阅读,希望能帮助到大家,谢谢大家对本站的支持!

java中let_java Signleton模式详解及示例代码相关推荐

  1. java中23中设计模式详解

    设计模式(Design Patterns) --可复用面向对象软件的基础 设计模式(Design pattern)是一套被反复使用.多数人知晓的.经过分类编目的.代码设计经验的总结.使用设计模式是为了 ...

  2. ROS中的多坐标变换详解(示例+代码)

    目录 坐标变换的数学基础 多坐标变换与静态/动态坐标变换的不同之处 tf坐标转换的实质 多坐标变换 静态/动态坐标变换 坐标系相对关系的发布 命令行形式:another_static_pub.laun ...

  3. java中的进制输出转换_Java I/O : Java中的进制详解

    作者:李强强 上一篇,泥瓦匠基础地讲了下Java I/O : Bit Operation 位运算.这一讲,泥瓦匠带你走进Java中的进制详解. 一.引子 在Java世界里,99%的工作都是处理这高层. ...

  4. Java中的Runtime类详解

    Java中的Runtime类详解 1.类注释 /**Every Java application has a single instance of class Runtime that allows ...

  5. Java中的static关键字详解

    ** Java中的static关键字详解 ** 在一个类中定义一个方法为static,即静态的,那就是说无需本类的对象就可以调用此方法.调用一个静态方法就是 "类名.方法名" ,静 ...

  6. Java中的main()方法详解

    源文作者:leizhimin    源文链接:http://lavasoft.blog.51cto.com/62575/53263 源文作者版权申明: 版权声明:原创作品,允许转载,转载时请务必以超链 ...

  7. java中Freemarker list指令详解

    java Freemarker中list指令主要是进行迭代服务器端传递过来的List集合. 定义 <#list nameList as names> ${names} </#list ...

  8. java中properties作用,Java中Properties的使用详解

    Java中有个比较重要的类Properties(Java.util.Properties),主要用于读取Java的配置文件,各种语言都有自己所支 持的配置文件,配置文件中很多变量是经常改变的,这样做也 ...

  9. Java 中的伪共享详解及解决方案

    转载自  Java 中的伪共享详解及解决方案 1. 什么是伪共享 CPU 缓存系统中是以缓存行(cache line)为单位存储的.目前主流的 CPU Cache 的 Cache Line 大小都是 ...

最新文章

  1. 啧啧,这种程序员……| 每日趣闻
  2. windows7下消除快捷键箭头的方法
  3. Ribbon之ServerList
  4. Elasticsearch 简介
  5. Linux电源管理(5)_Hibernate和Sleep功能介绍【转】
  6. POJ1358 Agri-Net
  7. 832. Flipping an Image
  8. 使用await和async关键字开发nodejs应用批量取出简书网站的文章标题和超链接
  9. 万事开头难,用HTML写的第一个界面,收获颇多
  10. iOS - UIControl
  11. ffmpeg函数介绍
  12. JS函数表达式的特征和递归
  13. Pocket Gems面经prepare: Diamond and Ruby
  14. linux文件映射mmap
  15. ps更换底色2019版本以上
  16. 网页 浏览器内核 Web标准(七七)
  17. 微软宣布任命前MOTO亚太总裁梁念坚为中国区CEO
  18. 融会贯通,从oracle...,融会贯通Oracle数据库的25条基本知识:
  19. mysql 5.6 免安装版_mysql 5.6.15的免安装版 安装
  20. Three.js 学习历程与总结

热门文章

  1. linux系统盘使用率达到100%的问题查找和解决方法
  2. Spring - @ControllerAdvice + @ExceptionHandler全局处理Controller层异常(转)
  3. 安装.Net Framework 4.6.2时出现“无法建立到信任根颁发机构的证书链”解决方法
  4. 解决vue中对象属性改变视图不更新的问题
  5. 【sql server】“因为数据库正在使用,所以无法获得对数据库的独占访问权” 解决方案汇总
  6. 如何将零终止的字节数组转换为字符串?
  7. 如何从grep -R中排除目录?
  8. 微信小程序----日期时间选择器(自定义精确到分秒或时段)
  9. supervisor守护进程的安装配置使用
  10. rabbitMQ第一篇:rabbitMQ的安装和配置