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

     1 package SingleDemo;
     2 
     3 
     4 
     5 
     6 //单例模式的设计要点共有3个
     7 /*
     8 1. 私有化构造函数
     9 2.在类内部定义一个堆上对象
    10 3.对外提供一个接口,将已经定义好的堆上对象以引用的方式返回出去
    11 
    12 */
    13 
    14 
    15 
    16 class Single
    17 {
    18     //计数器 
    19     private int num;
    20     
    21     //初始化计数器
    22     {
    23         num = 0;
    24     }
    25     
    26     //获取计数器
    27     public int getNum()
    28     {
    29         return num;
    30     }
    31     
    32     
    33     //构造函数 每当构造一个对象计数器便加一;
    34     private Single()
    35     {    
    36         ++num;
    37         System.out.println("num=" + num);
    38     }
    39     
    40     //在类内部定义一个对象 //c++是用指针实现
    41     private static Single s = new Single();
    42     
    43     
    44     //定义一个接口
    45     public static Single getInstance()
    46     {
    47         return s;
    48     }
    49     
    50 }
    51 
    52 
    53 
    54 //设计模式 入门  单例模式
    55 public class SingleDemo {
    56     public static void main(String[] args)
    57     {
    58         Single s1 = Single.getInstance();
    59         Single s2 = Single.getInstance();
    60         
    61 
    62         
    63         System.out.println(s1.getNum());
    64         System.out.println(s2.getNum());
    65     }
    66     
    67     
    68 }

    打印结果

    num=1
    1
    1  

    可见 我们只能定义一个该类的对象

  • 相关阅读:
    Element-ui 的 slot 关系理解
    关于Delegate委托和Event事件的学习
    JavaScript 中 prototype 与 __proto__
    正向代理与反向代理的个人理解
    MVC和三层架构
    关于SqlDataAdapter的思考
    关于C#连接Oracle数据库
    关于VS配置环境
    富文本的实现
    博客
  • 原文地址:https://www.cnblogs.com/DLzhang/p/4164794.html
Copyright © 2011-2022 走看看