Java 入门24 设计模式 单例
2022/6/25 14:22:51
本文主要是介绍Java 入门24 设计模式 单例,对大家解决编程问题具有一定的参考价值,需要的程序猿们随着小编来一起学习吧!
饿汉单例模式
SingleInstance
package com.ITheima._static_codeblock; public class SingleInstance { /** * 1 把无参构造器私有藏起来 */ private SingleInstance(){ } /** * 2 定义一个公开的静态的成员变量存储一个类的对象 * 饿汉:在这里加载静态变量的时候就会创建对象了 */ public static SingleInstance instance=new SingleInstance(); }View Code
Test类
package com.ITheima._static_codeblock; public class Test { public static void main(String[] args) { SingleInstance s1=SingleInstance.instance; SingleInstance s2=SingleInstance.instance; SingleInstance s3=SingleInstance.instance; System.out.println(s1); System.out.println(s2); System.out.println(s3); System.out.println(s1 == s2 && s2 == s3);//true } }View Code
懒汉单例模式
SingleInstance1类
package com.ITheima._static_codeblock; public class SingleInstance1 { //1 私有化构造器 private SingleInstance1() { } //2 创建一个静态的成员变量存储类的对象,注意此时不能初始化对象 private static SingleInstance1 instance = null; //3定义一个方法 ,让其他地方可以来调用获取一个对象 public static SingleInstance1 getInstance() { //第一次获取对象 if (instance == null) { instance = new SingleInstance1(); } return instance; } }View Code
Test1类
package com.ITheima._static_codeblock; public class Test1 { public static void main(String[] args) { SingleInstance1 s1 = SingleInstance1.getInstance(); SingleInstance1 s2 = SingleInstance1.getInstance(); SingleInstance1 s3 = SingleInstance1.getInstance(); System.out.println(s1 == s2 && s2 == s3);//true } }View Code
这篇关于Java 入门24 设计模式 单例的文章就介绍到这儿,希望我们推荐的文章对大家有所帮助,也希望大家多多支持为之网!
- 2024-11-22[开源]10.3K+ Star!轻量强大的开源运维平台,超赞!
- 2024-11-21Flutter基础教程:新手入门指南
- 2024-11-21Flutter跨平台教程:新手入门详解
- 2024-11-21Flutter跨平台教程:新手入门与实践指南
- 2024-11-21Flutter列表组件教程:初学者指南
- 2024-11-21Flutter列表组件教程:新手入门指南
- 2024-11-21Flutter入门教程:初学者必看指南
- 2024-11-21Flutter入门教程:从零开始的Flutter开发指南
- 2024-11-21Flutter升级教程:新手必读的升级指南
- 2024-11-21Flutter升级教程:轻松掌握Flutter版本更新