浅谈常见设计模式--单例模式 简单工厂模式

本文介绍了设计模式中的单例模式和简单工厂模式。单例模式确保一个类只有一个实例,提供了全局访问点。简单工厂模式则通过一个工厂类来创建所需对象,降低了对象间的耦合。文章探讨了两种模式的应用场景、优缺点,并给出了基于Java的代码示例。
摘要由CSDN通过智能技术生成

今题那站在这里和大家一起分享最近在一本书上看到的关于设计模式的内容,接下来要讲的设计模式有:

  1. 单例模式
  2. 简单工厂模式
  3. 工厂方法和抽象工厂
  4. 代理模式
  5. 命令模式
  6. 策略模式
  7. 门面模式
  8. 桥接模式
  9. 观察者模式

接下来详细介绍灭一种设计模式(注意:下面的讲解都是基于java语言)

1.单例模式

定义:Java中单例模式定义:“一个类有且仅有一个实例,并且自行实例化向整个系统提供。”

java单例模式代码片段:

public class SingletonClass{
    private static volatile SingletonClass instance=null;
    public static SingletonClass getInstance(){
        if(instance==null){
            synchronized(SingletonClass.class){
                if(instance==null){
                    instance=new SingletonClass();
                }
            }
        }
        return instance;
    }
    private SingletonClass(){}
}

为什么需要单例模式?

  1. 对于系统中的某些类来说,只有一个实例很重要,例如,一个系统中可以存在多个打印任务,但是只能有一个正在工作的任务;一个系统只能有一个窗口管理器或文件系统;一个系统只能有一个计时工具或ID(序号)生成器。如在Windows中就只能打开一个任务管理器。如果不使用机制对窗口对象进行唯一化,将弹出多个窗口,如果这些窗口显示的内容完全一致,则是重复对象,浪费内存资源;如果这些窗口显示的内容不一致,则意味着在某一瞬间系统有多个状态,与实际不符,也会给用户带来误解,不知道哪一个才是真实的状态。因此有时确保系统中某个对象的唯一性
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值