• C#学习-构造函数


           如果没有为类显式地定义一个构造函数,则C#编译器会自动生成一个函数体为空的默认无参的实例构造函数。

           构造函数主要用于创建类的实例对象。

           当调用构造函数创建一个对象时,构造函数会为对象分配内存空间,并初始化类的成员。

           构造函数分为实例构造函数和静态构造函数两种。

           实例构造函数用于创建和初始化类的实例。使用new运算符创建对象的过程,其实就是在调用实例构造函数,来初始化类中所有实例成员。

           实例构造函数可以进行方法重载。实现了方法重载,就可通过不同的方式来完成类的实例化。

           可以对实例构造函数指定访问级别,即可以使用public、protected和private修饰符来修饰。(用public关键字修饰的构造函数,称为公共构造函数;用private关键字来修饰实例构造函数,称为私有构造函数)

           然而不是任何一个函数都可以成为实例构造函数,实例构造函数必须满足一下两个条件:构造函数必须和类同名;构造函数不允许有返回类型

           如果类只定义一个或多个私有构造函数,而没有其他公共构造函数,则其他类不能通过调用该类的私有构造函数类创建类的实例。

           私有构造函数最典型的应用是设计模式中单例模式的实现。

           除了实例构造函数之外,构造函数还包括静态构造函数。

           静态构造函数用于初始化类中的静态成员,在创建第一个实例或引用任何静态成员之前,CLR都将自动调用静态构造函数。

           与实例构造函数一样,要称为静态构造函数必须具有以下特点

           静态构造函数不能使用任何访问修饰符

           静态构造函数不能带有任何参数

           静态构造函数只会执行一次

           不能直接调用静态构造函数

           在程序中,程序员无法控制执行静态函数的时机

  • 相关阅读:
    week4:周测错题
    小程序1:登录/注册小程序
    小程序2:实现一个购物车
    day26:装饰器&面向对象当中的方法&property
    day25:7个魔术方法&5个关于类的魔术属性
    day24:多态&魔术方法__new__&单态模式
    day23:单继承&多继承&菱形继承&__init__魔术方法
    day22:面向对象封装对象操作&类操作&面向对象删除操作
    day21:正则函数&模块和包(import)
    APP探索之iAPP
  • 原文地址:https://www.cnblogs.com/158-186/p/10550401.html
Copyright © 2020-2023  润新知