zoukankan      html  css  js  c++  java
  • 【C#学习笔记】构造函数重载,构造函数相互调用,静态构造函数

       class student
        {
            
    private int age;
            
    private string name;
            
    public static int schoolage;  //静态成员

            
    public string Name
            {
                
    get { return name; }
                
    set { name = value; }
            }

            
    public int Age
            {
                
    get { return age; }
                
    set { age = value; }
            }

            
    public student(int Age, string Name) 
            {
                
    this.age = Age;
                
    this.name = Name;
            }

            
    //调用了带两个参数的构造函数
            public student(int Age):this(Age,"未起名")
            {
            }

            
    //调用了带1个参数的构造函数
            public student():this(18
            {
            }

            
    //静态构造函数必须无参数和无访问修饰符
            
    //静态构造函数不能使用this关键字,this是指向对象,而不是类
            
    //静态构造函数只能构造静态成员
            
    //静态构造函数最多只会被执行一次
            static student()
            {
                schoolage 
    = 18;
            }

            
    public void Show() 
            {
                Console.WriteLine(
    "我的名字叫{0},我今年{1}岁",this.name,this.age);
            }
        }

     类里面所有声明为静态的成员,方法,都只是对类的定义和操作,类的静态构造函数自然也就只会在操作此类相关的时候被实例化一次

     反之,所有非静态的成员,方法,都是对类的实例化对象进行操作,所以每当实例化一个对象,就会去执行一次相应的构造函数 

  • 相关阅读:
    OpenGL模板缓冲区与模板测试
    u3d调用c++ dll的DllNotFoundExceion 问题
    u3d调用自己的dll
    使用 idea 的Bookmarks(书签)功能
    maven 相关问题
    项目
    使用 vi/vim 时,粘贴进新创建文件或空文件的首行内容丢失的解决方法
    Thread.sleep还是TimeUnit.SECONDS.sleep
    搭建 Guacamole 并解决各种坑和创建不了虚拟驱动器导致无法实现文件传输的方法
    properJavaRDP 跑通本地远程桌面
  • 原文地址:https://www.cnblogs.com/huanghai/p/1887232.html
Copyright © 2011-2022 走看看