zoukankan      html  css  js  c++  java
  • 关于静态构造函数

    程序如下所示

        class Program
        {
            static void Main(string[] args)
            {

                1、 Singleton.getInstance();

                2、Singleton s = new Singleton();
                Console.ReadLine();
            }
        }

    public  class Singleton
        {
            private static int instance;
            public Singleton()
            {
                Console.WriteLine("no static Singleton");
            }
            static Singleton()
            {
                Console.WriteLine("static Singleton");
            }
            public static void getInstance()
            {
                if (instance == 0)
                {
                    instance = instance+1;
                }
                Console.WriteLine( instance+"");
            }
        }

    1、 Singleton.getInstance();此时程序会先执行静态构造函数,再调用getInstance()方法,程序会先输出“static Singleton” 再输出“1”

    2、Singleton s = new Singleton();
    此时调先执行 静态构造函数,再调用非静态构造函数,最后调用getInstance()方法,输出“static Singleton” 再输出“no static Singleton”最后输出“1”

    注:静态构造函数只执行一次,当子类多次实例化时候,父类的静态构造函数只执行一次,父类的非静态构造函数则会多次执行。

  • 相关阅读:
    人与人之间的距离
    Web API之service worker
    css背景图等比例缩放,盒子随背景图等比例缩放
    js节流函数高级版
    vue实现百度搜索下拉提示功能
    vue实现图片点击放大
    css图片宽高相等设置
    sublime常用插件及配置
    css揭秘读书笔记
    webpack2.0简单配置教程
  • 原文地址:https://www.cnblogs.com/yidianfeng/p/2262904.html
Copyright © 2011-2022 走看看