zoukankan      html  css  js  c++  java
  • 设计模式_单例模式

    回顾基础知识,温故而知新。

    单例模式有饿汉模式和懒汉模式

     1 package com.xiaoysec.designpattern;
     2 /**
     3  * 
     4  * @author xiaoysec
     5  *本例是展示java单例模式中的饿汉模式
     6  *饿汉模式 特点:   类加载的速度比较慢(在类加载的过程中创建唯一的实例对象) 运行的速度会比较快 线程安全
     7  */
     8 
     9 public class Singleton {
    10     //将构造方法定义为私有 防止外部创建新的实例对象
    11    private Singleton(){}
    12    
    13    //private static修饰 在类加载时就创建唯一的实例对象 
    14    private static Singleton instance = new Singleton();
    15    
    16    //public static修饰 外部调用以获取实例对象的引用
    17    public static Singleton getInstance(){
    18        return instance;
    19    }
    20     public static void main(String[] args){
    21         Singleton instance = Singleton.getInstance();
    22         Singleton instance2 = Singleton.getInstance();
    23         if(instance == instance2){
    24             System.out.println("是相同的对象");
    25         }
    26         else
    27             System.out.println("不是相同的对象");
    28     }
    29 
    30 }
    View Code
     1 package com.xiaoysec.designpattern;
     2 /**
     3  * 
     4  * @author xiaoysec
     5  *本例主要展示java单例模式中的懒汉模式
     6  *懒汉模式的特点是  在类加载是并不创建实例对象 类加载的速度比较快但是运行的速度会比较慢(对象创建)线程不安全
     7  */
     8 public class Singleton2 {
     9     private Singleton2(){}
    10     
    11     
    12     private static Singleton2 instance = null;
    13     
    14     
    15     public static Singleton2 getInstance(){
    16         if(instance==null){
    17             instance = new Singleton2();
    18         }
    19         return instance;
    20     }
    21     public static void main(String[] args){
    22         Singleton2 instance1 = Singleton2.getInstance();
    23         Singleton2 instance2 = Singleton2.getInstance();
    24         if(instance1 == instance2){
    25             System.out.println("是同一个对象");
    26         }else
    27             System.out.println("不是同一个对象");
    28     }
    29 
    30 }
    View Code
  • 相关阅读:
    右下角老弹出盗版提示,以及登录界面出现正版验证对话框
    动态TSQL语句常見問題與解決方案
    验证码
    远程调用存储过程
    windows powershell
    屏蔽IE浏览器的刷新(不包括单个刷新按钮)
    获取数据库中的数据库有多少个
    网页刷新方法集合
    Win7中IIS7安装配置
    sql 根据字段查表名
  • 原文地址:https://www.cnblogs.com/xiaoysec/p/4269026.html
Copyright © 2011-2022 走看看