首页 > 编程语言 >C# 类class 构造函数

C# 类class 构造函数

时间:2023-03-07 13:11:37浏览次数:40  
标签:C# System public 对象 MainClass using class 构造函数

C# 类class 构造函数

C# 是面向对象的编程语言,对象就是面向对象程序设计的核心。所谓对象就是真实世界中的实体,对象与实体是一一对应的,也就是说现实世界中每一个实体都是一个对象,它是一种具体的概念。本文主要介绍C# 构造函数。

 

1、C# 构造函数

C# 中的构造函数是一种用于初始化对象的特殊方法。 创建类的对象时将调用构造函数。 可用于设置对象属性的初始值:

例如,

创建构造函数:

using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
namespace ConsoleApplication
{
    // 定义MainClass类
    public class MainClass
    {
        int x;  // 创建一个类属性
        // 为Main类创建一个类构造函数
        public MainClass()
        {
            x = 5;  // 为类属性x设置初始值
        }
        public static void Main(string[] args)
        {
            MainClass myObj = new MainClass(); // 创建Main类的对象(这将调用构造函数)
            Console.WriteLine(myObj.x); // 输出x的值
        }
    }
}// 输出 5

注意:构造函数名称必须匹配类名称,并且不能具有返回类型(例如,void)。 另外注意,在创建对象时会调用构造函数。默认情况下,所有类都具有构造函数:如果未创建类构造函数,则C# 会为创建一个。 但是将无法设置对象属性的初始值。

2、构造函数参数

构造函数还可以使用参数来初始化属性。

构造函数还可以使用参数来初始化属性。

下面的示例向构造函数添加一个int y参数。在构造函数内部,我们将x设置为y(x = y)。当我们调用构造函数时,我们将一个参数传递给构造函数(5),它将x的值设置为5

例如,

using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
namespace ConsoleApplication
{
    public class MainClass
    {
        int x;
        public MainClass(int y)
        {
            x = y;
        }
        public static void Main(string[] args)
        {
            MainClass myObj = new MainClass(5);
            Console.WriteLine(myObj.x);
        }
    }
}// 输出 5

可以根据需要设置任意个数的参数:

例如,

using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
namespace ConsoleApplication
{
    public class MainClass
    {
        int age;
        string name;
        public MainClass(int a, String n)
        {
            age = a;
            name = n;
        }
        public static void Main(string[] args)
        {
            MainClass myLanguage = new MainClass(3, "cjavapy");
            Console.WriteLine(myLanguage.age + " " + myLanguage.name);
        }
    }
}// 输出 3 cjavapy

3、构造函数与普通函数的区别

1)一般函数是用于定义对象应该具备的功能。而构造函数定义的是,对象在调用功能之前,在建立时,应该具备的一些内容。也就是对象的初始化内容。

2)构造函数是在对象建立时由.NET FrameWork调用, 给对象初始化。一般函数是对象建立后,当对象调用该功能时才会执行。

3)普通函数可以使用对象多次调用,构造函数就在创建对象时调用。

4)构造函数的函数名要与类名一样,而普通的函数只要符合标识符的命名规则即可。

5)构造函数没有返回值类型。

标签:C#,System,public,对象,MainClass,using,class,构造函数
From: https://www.cnblogs.com/GaoUpUp/p/17187733.html

相关文章

  • C# 类class 方法
    C#类class方法C#是面向对象的编程语言,对象就是面向对象程序设计的核心。所谓对象就是真实世界中的实体,对象与实体是一一对应的,也就是说现实世界中每一个实体都......
  • C# 修饰符
    C#修饰符C#是面向对象的编程语言,对象就是面向对象程序设计的核心。所谓对象就是真实世界中的实体,对象与实体是一一对应的,也就是说现实世界中每一个实体都是一个......
  • Gini coefficient直观的解释与实现
    引言大家在机器学习中经常会看到基尼系数的词汇,有时候在做比赛的时候,有些赛题的ScoringMetric就是基尼系数。我们去Google或者Baidu,得到的都是些不甚满意的经济学相关......
  • CART分类回归树分析与python实现
    引言前面我们分享过一篇决策树算法叫ID3:ID3决策树原理分析及python实现。首先我们来回顾下ID3算法。ID3每次选取最佳特征来分割数据,这个最佳特征的判断原则是通过信息......
  • 89. Gray Code
    ##题目Thegraycodeisabinarynumeralsystemwheretwosuccessivevaluesdifferinonlyonebit.Givenanon-negativeintegernrepresentingthetotalnum......
  • 80. Remove Duplicates from Sorted Array II
    ##题目Followupfor“RemoveDuplicates”:Whatifduplicatesareallowedatmosttwice?Forexample,Givensortedarraynums=[1,1,1,2,2,3],Yourfunction......
  • 81. Search in Rotated Sorted Array II
    ##题目Followupfor“SearchinRotatedSortedArray”:Whatifduplicatesareallowed?Wouldthisaffecttherun-timecomplexity?Howandwhy?Supposeana......
  • 82. Remove Duplicates from Sorted List II
    ##题目Givenasortedlinkedlist,deleteallnodesthathaveduplicatenumbers,leavingonlydistinctnumbersfromtheoriginallist.Forexample,Given1->......
  • 79. Word Search
    ##题目Givena2Dboardandaword,findifthewordexistsinthegrid.Thewordcanbeconstructedfromlettersofsequentiallyadjacentcell,where“adja......
  • 29. My Calendar I
    29.MyCalendarI标签(空格分隔):leetcodearraymedium题目ImplementaMyCalendarclasstostoreyourevents.Aneweventcanbeaddedifaddingtheeve......