在上海乐字节学习Java的十四天

2020-11-05  本文已影响0人  天上的小仙女呀

Java设计模式
设计模式是软件开发人员在软件开发过程中面临的一般问题的解决方案

单例模式(两种代码实现方式:饿汉式,懒汉式 )
目的:使得类的一个对象成为该类系统中的唯一实例
定义:一个类有且仅有一个实例,并且自行实例化向整个系统提供

饿汉式(对象创建过程中实例化)
代码实现:

package com.sh.Singleton;
饿汉式:创建对象实例的时候直接初始化 空间换时间

public class SingletonOne {
    //1、创建类中私有构造
    private SingletonOne(){
        
    }
    
    //2、创建该类型的私有静态实例
    private static SingletonOne instance=new SingletonOne();
    
    //3、创建公有静态方法返回静态实例对象
    public static SingletonOne getInstance(){
        return instance;
    }

懒汉式(静态公有方法中实例化)
代码实现:

package com.sh.Singleton;
懒汉式:类内实例对象创建时并不直接初始化,直到第一次调用get方法时,才完成初始化操作
时间换空间

public class SingletonTwo {
    //1、创建私有构造方法
    private SingletonTwo(){
        
    }
    
    //2、创建静态的该类实例对象
    private static SingletonTwo instance=null;
    
    //3、创建开放的静态方法提供实例对象
    public static SingletonTwo getInstance(){
        if(instance==null)
            instance=new SingletonTwo();
        
        return instance;
    }

测试

package com.sh.Singleton;

public class test {

    public static void main(String[] args) {
        // TODO Auto-generated method stub
        SingletonOne one =SingletonOne.getInstance();
        SingletonOne two=SingletonOne.getInstance();
        System.out.println(one);
        System.out.println(two);
        System.out.println("===================================");
        SingletonTwo one1 =SingletonTwo.getInstance();
        SingletonTwo two1=SingletonTwo.getInstance();
        System.out.println(one1);
        System.out.println(two1);
    }

总结
设计模式
单例模式介绍
饿汉式代码实现
懒汉式代码实现

上一篇 下一篇

猜你喜欢

热点阅读