单例设计模式

简介:
package test;
/*
单例设计模式特点
1.类不能实例化 构造方法私有化
2.类中先实例化一个对象
3.提供一个返回类对象的方法 getInstance

*/

public class Singleton {

     public static void main(String[] args) {
          // TODO Auto-generated method stub\
          Single si=Single.getInstance();
          si.say();
         
          System.out.println("------------------------");
          Single1 si2=Single1.getInstance();
          si2.say();

     }

}

/*
* 饿汉式单例设计模式
*/

class Single{
     //先实例化一个对象
     private static Single s=new Single();
    
     private Single(){
         
     }
    
     public void say(){
          System.out.println("这是一个单例饿汉式设计模式");
     }
    
     public static Single getInstance(){
          return s;
     }
}


/*
* 懒汉式单例设计方法
*/

class Single1{
     //先实例化一个对象
     private static Single1 s=null;
    
     private Single1(){
         
     }
    
     public void say(){
         
          System.out.println("这是一个单例懒汉式设计模式");
     }
    
     public static Single1 getInstance(){
        if(s==null){
               s=new Single1();
          }
          return s;
     }
}
目录
相关文章
|
6月前
|
设计模式
单例设计模式步骤
单例设计模式步骤
33 1
|
6月前
|
设计模式 安全 测试技术
【C/C++ 设计模式 单例】单例模式的选择策略:何时使用,何时避免
【C/C++ 设计模式 单例】单例模式的选择策略:何时使用,何时避免
135 0
|
6月前
|
设计模式 缓存 安全
单例设计模式的优缺点
单例设计模式的优缺点
|
6月前
|
设计模式 XML 存储
关于 ABAP 单例设计模式的一个冷门知识点
关于 ABAP 单例设计模式的一个冷门知识点
|
6月前
|
设计模式 安全 Java
【设计模式】2、设计模式分类和单例设计模式
【设计模式】2、设计模式分类和单例设计模式
57 0
|
6月前
|
设计模式 消息中间件 安全
多线程编程设计模式(单例,阻塞队列,定时器,线程池)(二)
多线程编程设计模式(单例,阻塞队列,定时器,线程池)(二)
54 1
|
6月前
|
设计模式 Java
26、Java 简单实现单例设计模式(饿汉式和懒汉式)
26、Java 简单实现单例设计模式(饿汉式和懒汉式)
51 2
|
6月前
|
设计模式 安全 Java
在Java中即指单例设计模式
在Java中即指单例设计模式
39 0
|
2月前
|
设计模式 存储 安全
设计模式——设计模式介绍和单例设计模式
饿汉式(静态常量)、饿汉式(静态代码块)、懒汉式(线程不安全)、懒汉式(线程安全,同步方法)、懒汉式(线程不安全,同步代码块)、双重检查(推荐,线程安全、懒加载)、静态内部类(推荐)、枚举(推荐)
设计模式——设计模式介绍和单例设计模式
|
3月前
|
设计模式 JavaScript 前端开发
从工厂到单例再到策略:Vue.js高效应用JavaScript设计模式
【8月更文挑战第30天】在现代Web开发中,结合使用JavaScript设计模式与框架如Vue.js能显著提升代码质量和项目的可维护性。本文探讨了常见JavaScript设计模式及其在Vue.js中的应用。通过具体示例介绍了工厂模式、单例模式和策略模式的应用场景及其实现方法。例如,工厂模式通过`NavFactory`根据用户角色动态创建不同的导航栏组件;单例模式则通过全局事件总线`eventBus`实现跨组件通信;策略模式用于处理不同的表单验证规则。这些设计模式的应用不仅提高了代码的复用性和灵活性,还增强了Vue应用的整体质量。
47 1

热门文章

最新文章