Net Core教程

C#构造函数

本文主要是介绍C#构造函数,对大家解决编程问题具有一定的参考价值,需要的程序猿们随着小编来一起学习吧!

构造函数

  • 什么是构造函数和构造函数的特点
    • 如何输出带参数的构造函数
      • 如何向父类的构造函数传参

什么是构造函数和构造函数的特点

构造函数是一种特殊的函数,用来在对象实例化时初始化对象的成员变量; 构造函数的名称必须与类相同;
当类没有定义构造函数时,编译器会自动生成一个默认的无参的构造函数,但该构造函数不会执行任何代码;
构造函数没有返回值;
构造函数在对象实例化时会被自动调用,且只运行一次;(在以下的代码中有体现!)
普通的方法在程序执行到它时被调用,且可以被对象调用多次。

如何输出带参数的构造函数

因为一个类中可以有多个构造函数,所以需要通过是否有参数和参数的类型来决定输出哪个构造函数。举例:

//using System;
namespace Hutao
{
    class Keqin
    {
        public Keqin() 
        {
            Console.WriteLine("我是无参的构造函数");
        }
        public Keqin(float w)
        {
            Console.WriteLine("我是参数为float的构造函数");
        }
        public Keqin(int t)
        {
            Console.WriteLine("我是参数为int的构造函数");
        }
        static void Main(String[] args)
        {
            Keqin k = new Keqin(2);//由于参数为int型,所以运行参数为int的构造函数
            int a;
            a = 666;
            Console.WriteLine(a);

        }
    }
}

这结果是:在这里插入图片描述
同理,当参数为float时,将会运行参数为float的构造函数.

如何向父类的构造函数传参

在C#学习中,继承的学习是必须的,那么当父类的构造函数需要参数时,我们该怎么传参呢?先来看以下代码:

//using System;
namespace Keqin
{
    class L
    {
        public string a;
        public L(string a)
        {
            this.a = a;
            Console.WriteLine("张三的性别是:"+a);
        }
    }
    class Hutao:L
    {
        public Hutao():base("男")
        { 
            Console.WriteLine("真帅啊!");
        }
        public static void Main(String[] args)
        { 
            Hutao hutao = new Hutao();
        }
    }
}

易知L是父类,Hutao是子类.我们可在子类中通过关键字base来向父类中的构造函数传参.

这篇关于C#构造函数的文章就介绍到这儿,希望我们推荐的文章对大家有所帮助,也希望大家多多支持为之网!