当前位置:首页 > C#学习

C#中类的继承小知识点

小道7年前 (2018-09-20)C#学习5577

类的构造实例化的过程:

一个子类的实例化先调用父类的构造函数,在调用子类的构造函数。

namespace 继承
{
    class Program
    {
        static void Main(string[] args)
        {
            男人 n = new 男人();//声明男人类的对象。
            Console.ReadKey();//按任意键退出。
        }
    }
    class 人  //人  类。
    {
        public 人()//默认的人类的构造函数
        {
            Console.WriteLine("人的默认构造函数。");//输出
        }
    }
    class 男人:人  // 继承人 类的 男人 类。
    {
        public 男人()//默认的男人类的构造函数
        {
            Console.WriteLine("男人的默认构造函数。");//输出
        }
    }
}

输出结果:

image.png


带参数的构造函数:

namespace 继承
{
    class Program
    {
        static void Main(string[] args)
        {
            男人 n = new 男人();//声明男人类的对象。
            Console.WriteLine("——————————————————");
            男人 nn = new 男人(18);//声明男人类的对象。
            Console.ReadKey();//按任意键退出。
        }
    }
    class 人  //人  类。
    {
        public int age;//全局字段
        public 人()//默认的人类的构造函数
        {
            Console.WriteLine("人的默认构造函数。");//输出
        }
        public 人(int a)//带参数的构造函数
        {
            age = a;//赋值
            Console.WriteLine("人的带参数的构造函数。年龄:{0}",age);//输出
        }
    }
    class 男人:人  // 继承人 类的 男人 类。
    {
        public 男人()//默认的男人类的构造函数
        {
            Console.WriteLine("男人的默认构造函数。");//输出
        }
        public 男人(int a)//带参数的构造函数
        {
            age = a;//赋值
            Console.WriteLine("男人类的带参数的构造函数。年龄:{0}",age);//输出
        }
    }
}

输出结果:

image.png

PS:使用带参数的构造函数会先调用父类的默认构造函数,在调用子类带参数的构造函数。


同时调用父类和子类的带参数的构造函数:

        ...
        public 男人(int a) : base(a)//在后面加上  : base(a)  就可以调用父类的带参数的构造函数。
        ...

输出结果:

image.png


同时调用父类默认构造函数和子类默认构造函数和子类带参数的构造函数:

        ...
        public 男人(int a) : this()//在后面加上  : this()  就可以调用父类的默认构造函数和子类默认构造函数。
        ...

输出结果:

image.png

扫描二维码推送至手机访问。

版权声明:本文由小道发布,如需转载请注明出处。

本文链接:https://daobk.com/post/104.html

分享给朋友:

“C#中类的继承小知识点” 的相关文章

while语句:用 while continue实现计算1到100之间的除了能被7整除之外所有整数的和。

while语句:用 while continue实现计算1到100之间的除了能被7整除之外所有整数的和。

while语句:用 while continue实现计算1到100之间的除了能被7整除之外所有整数的和。            int i = 1;/…

定义类:一个类可有有多个实例。

定义类:一个类可有有多个实例。

一个类可有有多个实例。类就是把一系列相关的变量(状态)、行为定义为一个整体。字段记录的就是这个对象相关的数据。    class Program     {     …

面向对象版聊天机器人

面向对象版聊天机器人

机器人有不同的名字、维护自己的FullLevel,可以SayHello(我叫***),可以喂食(Eat(int foodCount)),可以对它说话(Speak),对异常情况(错误的喂饭数字,喂的太多撑死了)进行处理,有两个机器人供选择,一开始通过1、2数字选择聊天机器人。  &…

异常与异常处理

异常与异常处理

传统的错误表示方式:错误码。举例。需要知道不同错误码的含义,如果不处理错误码,则程序可能陷入不可以预置的错误。陈摄影师以为文件已经被删除造成的麻烦。错误码的缺点:不处理则很难发现,每次处理则很麻烦;难以看出错误的原因;容易使得程序进入不确定状态。try catch。Exception ex 异常也是…