当前位置:首页 > C#学习 > 正文内容

C#中类的继承小知识点

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

类的构造实例化的过程:

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

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#中类的继承小知识点” 的相关文章

用户输入两个整数,并将这两个整数相加。

用户输入两个整数,并将这两个整数相加。

提示用户输入两个整数,并将这两个整数相加。            Console.WriteLine("请输入第一个数字:");//提示用户输入第一个数字。...

if语句应用:提示用户输入密码,如果输入的是"888888",输出"密码正确",反之则输出"密码不正确"

if语句应用:提示用户输入密码,如果输入的是"888888",输出"密码正确",反之则输出"密码不正确"

if语句应用:提示用户输入密码,如果输入的是"888888",输出"密码正确",反之则输出"密码不正确"。提示用户输入密码,如果密码是“888888”则提示正确,否则提示错误。     &n...

if语句应用:依次提示用户输入两个整数

if语句应用:依次提示用户输入两个整数

依次提示用户输入两个整数(假设i1、i2)。如果i1、i2都是正数,则将i1的值递增一个数,然后打印i1+i2的值;如果i1、i2都是负数,则将i1的值递减10个数,然后打印i1*i2的值;如果i1、i2中任一个为0,则提示数据有错误;否则计算i1*i2的绝对值。   ...

Switch语句:输入一个数字,用Switch判断,并输出。

Switch语句:输入一个数字,用Switch判断,并输出。

Switch语句:输入一个数字,用Switch判断,并输出。            Console.WriteLine("输入一个数:");//提示用户输入一个...