zoukankan      html  css  js  c++  java
  • 用静态内部类实现单例模式

    基础知识:

    • Java程序的初始化顺序依次是:父类静态变量-->父类静态代码块-->子类静态变量-->子类静态代码块-->父类非静态变量-->父类非静态代码块-->父类构造函数-->子类非静态变量-->子类非静态代码块-->子类构造函数
    • 用静态的内部类实现单例模式的原理:静态内部类可以不依赖外部类的实例而被实例化。(更多关于静态内部类的内容,请看:Java的内部类

    Java静态的内部类实现单例模式代码:

    public class SingletonTest{
        private SingletonTest(){
     
        }
      
    //开始写代码,使用内部静态类实现单例模式 public static SingletonTest getInstance(){
          
    return innerStaticClass.instance; } static class innerStaticClass{   private static SingletonTest instance=new SingletonTest(); } //end_code
      public static void main(String args[]){ SingletonTest singleton1 = SingletonTest.getInstance(); SingletonTest singleton2 = SingletonTest.getInstance(); System.out.println(singleton1 == singleton2); } }

    C#版本的单例模式

    最简单的写法:

    public class Singleton
    {
        private Singleton(){}
        public static readonly Singleton instance = new Singleton();
    }  

    参考:

    C#单例模式的三种写法
    C#设计模式学习笔记-单例模式

  • 相关阅读:
    JS函数式编程【译】前言
    11.15周总结
    11.13
    11.12
    11.11
    11.10
    11.9
    11.8周总结
    11.6
    11.5
  • 原文地址:https://www.cnblogs.com/aaronhoo/p/7413135.html
Copyright © 2011-2022 走看看