欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页

C#基础之构造函数

程序员文章站 2022-06-10 13:05:57
...

构造函数:是一种特殊的方法。主要用来在创建对象时初始化对象,即为对象变量赋初始值,与new运算符一起使用在创建对象的语句中

特点:

(1)构造函数名称必须与类名相同
(2)构造函数的功能主要用于在类的对象创建时定义初始化的状态
(3)构造函数不能直接被调用,必须通过new运算符在创建对象时才会被自动调用
(4)当定义一个类的时候,通常情况下都会显示该类的构造函数,并在函数中指定初始化的工作也可以省略
(5)当一个类只定义了私有的构造函数,将无法通过new关键字来创建其对象,当一个类没有定义任何构造函数,编译器会为其自动生成一个默认的无参数的构造函数。
当你初始化一个对象的同时想执行某些操作时(例如,给字段赋初值),需要构造函数(你想做的操作就写在构造函数内),如果你不写构造函数系统会给你一个什么也不做的默认构造函数。一旦你写了,系统就不会再给你提供默认的了,声明对象时就必须用你自己定义的构造函数

public class Program {

public class GrandfatherClass {
public GrandfatherClass() {
Console.WriteLine(“Constructor of GrandfatherClass”);
}
public GrandfatherClass(string from) {
Console.WriteLine(“Constructor of GrandfatherClass:{0}”, from);
}
}

    //父亲类
    public class FatherClass : GrandfatherClass {
        public FatherClass() {
            Console.WriteLine("Constructor of FatherClass");
        }
        public FatherClass(string from) {
            Console.WriteLine("Constructor of FatherClass:{0}", from);
        }
    }
    public class MeClass : FatherClass {
        public MeClass() {
            Console.WriteLine("Constructor of MeClass");
        }
        public MeClass(string from) {
            Console.WriteLine("Constructor of MeClass:{0}", from);
        }
    }

    static void Main(string[] args) {
        //类实例化
        Console.WriteLine("类实例化,调用无参构造函数:");
        MeClass me = new MeClass();

        Console.WriteLine();

        //类实例化,含参数
        string from = "tiana0";
        Console.WriteLine("类实例化,调用有参构造函数:");
        MeClass me1 = new MeClass(from);
        Console.ReadKey();
    }
}
    }