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);
}
}
{
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);
}
}
类里面所有声明为静态的成员,方法,都只是对类的定义和操作,类的静态构造函数自然也就只会在操作此类相关的时候被实例化一次
反之,所有非静态的成员,方法,都是对类的实例化对象进行操作,所以每当实例化一个对象,就会去执行一次相应的构造函数