zoukankan      html  css  js  c++  java
  • Java面向对象_单例设计模式

    单例设计模式:保证一个类仅有一个实例,并提供一个访问它的全局访问点

    1.构造方法私有化

    2.声明一个本类对象

    3.给外部提供一个静态方法获取对象实例

    两种实现方式:饿汉式和懒汉式

    何种情况下使用呢?当一个类中没有属性(对象的状态);该类作为工具类使用非常频繁;

    好处:节省内存(因为不断创建对象会消耗内存)

     1 public class Practice14 {
     2     
     3     public static void main(String[] args) {
     4         // TODO Auto-generated method stub
     5         Single s=Single.getInstance();
     6         s.method();
     7 }    
     8 }
     9 //饿汉式
    10 class Single{
    11     private static Single single=new Single();
    12     private Single(){ //构造方法私有化,为了防止在本类外部实例化对象
    13         
    14     }
    15     public static Single getInstance(){
    16         return single;
    17     }
    18     public void method(){
    19         System.out.println("method");
    20     }
    21 }
    22 //懒汉式
    23 class Single2{
    24     private static Single2 single=null;
    25     private Single2(){ //构造方法私有化
    26         
    27     }
    28     public static Single2 getInstance(){
    29         if(single==null){
    30             single=new Single2();
    31         }
    32         return single;
    33     }
    34     public void method(){
    35         System.out.println("method");
    36     }
    37 }
  • 相关阅读:
    [LeetCode] 88. Merge Sorted Array
    [LeetCode] 73. Set Matrix Zeroes
    [LeetCode] 70. Climbing Stairs(斐波那契数列)
    [LeetCode] 65. Valid Number(多个标志位)
    [LeetCode] 57.Insert Interval
    [CCF] 201612-2 工资计算
    手脱Aspack变形壳1
    手脱FSG v1.33
    手脱PEncrypt 4.0
    手脱JDPack
  • 原文地址:https://www.cnblogs.com/shenhainixin/p/5064224.html
Copyright © 2011-2022 走看看