zoukankan      html  css  js  c++  java
  • 类的初始化顺序

    1. 静态变量赋初值

    2. 执行静态变量初始化器

    3. 基类的静态构造函数执行

    4. 当前类的静态构造函数执行

    5. 实例变量赋初值

    6. 实例变量初始化执行

    7. 基类的实例构造函数执行

    8. 当前类的实例构造函数执行

    例如:

    1.

    public class BaseTest

    {

    private static string name = “BaseTest”;

    static BaseTest()

    {

    }

    public BaseTest()

    {

    }

    }

    public class InheritedTest: BaseTest

    {

    private static string alias = “alias”;

    private string myname = “myname”;

    static InheritedTest()

    {

    }

    public InheritedTest()

    {

    }

    }

    当client调用这个语句: InheritedTest myTest = new InheritedTest();时,语句的执行顺序是:

    1. alias变量分配空间

    2. alais 赋值

    3. name分配空间

    4. name赋值

    3. BaseTest静态构造函数执行

    4. InheritedTest静态构造函数执行

    5. myname分配空间

    6. myname赋值

    7. BaseTest()实例构造器执行

    8. Inherited()实例构造器执行

  • 相关阅读:

    链表
    Codeforces 1290A/1291C
    Codeforces 1291B
    Codeforces 1291A
    Codeforces 1295C
    Codeforces 1295B
    ZJNU 2356
    ZJNU 2354
    ZJNU 2353
  • 原文地址:https://www.cnblogs.com/lbsong/p/1657944.html
Copyright © 2011-2022 走看看