C#笔记12 类:类成员补充02

C#笔记12 类:类成员补充02

——本系列是基于人民邮电出版社《C#2008 C#图解教程》、清华大学出版社《C#入门经典(第五版)》两本书的自学C#笔记,如果您发现了本文的纰漏,还望不吝指正。

写在前边

*复习:类是一种能存储数据并执行代码的数据结构,它包含:

  • 数据成员——存储数据
    包括:字段、常量
  • 函数成员——执行代码
    包括:方法,属性,构造函数,索引,运算符,事件,析构函数

上两篇笔记 C#笔记10 类:基础
C#笔记11 类:类成员补充01
已经介绍了九种类成员类型中的五种(字段,方法,常量,属性和索引)。这一篇将介绍更多类型的类成员(构造函数和析构函数)。

1. 构造函数

类的构造函数是类的一个特殊的函数成员,当一个类被实例化为一个对象时,将会调用构造函数完成对象的初始化

1.1 实例构造函数

实例构造函数在类的每个新实例创建的时候执行

声明方法:

//访问修饰符 类名(参数)
{
   
	//初始化;
}

例:

class Student
{
   
    private string name;
    public Student(string name)
    {
   
        this.name=name; 
    }
}

1).没有返回类型,因为固定返回对应的对象
2).构造函数的方法名必须和类名一致
3).不指定时,将有一个默认构造(默认的构造函数没有任何参数)
4).如果指定,默认构造将会失效(但可重载出默认构造)

例:System命名空间中的Random类,它是由BLC提供的用于产生随机数的类,它默认的无参构造函数可以根据当前系统时钟为种子,进行一系列算法得出要求范围内的伪随机数。

Random

this关键字:

1).用于区分类的成员和本地变量,或参数
2).作为调用方法的实参

  • 指代自身的实例对象
  • 指向自身的构造函数

1.2 静态构造函数

构造函数也可以声明为static,这个构造函数只会被执行一次。也就是在创建第一个实例或引用任何静态成员之前,由.NET自动调用。

通常,静态构造函数用来初始化静态的字段

1).没有返回类型,因为固定返回对应的对象
2).构造函数的方法名必须和类名一致
3).类只能有一个静态构造函数,而且不能带参数
4).静态构造函数不能有访问修饰符
5).类既可以有静态构造函数,也可以有实例构造函数
6).静态构造函数不能访问所在类的实例成员,因此也不能使用this关键字访问
7).不能从程序中显式调用静态构造函数,它们被系统自动调用

例:下边代码中,类A包括没有赋初始值的静态字段X,和静态构造函数,类B包括赋初始值的静态字段Y和静态构造函数。在Main函数执行时,.NET已经提前自动调用了两个静态构造函数,所以执行顺序为:

static A()下的 B.Y ==> static B()下的Console.WriteLine ==> static A()下的Console.WriteLine

class A
{
   
	public static int X
  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值