C# 构造函数

您所在的位置:网站首页 构造函数菜鸟教程 C# 构造函数

C# 构造函数

2023-12-11 08:52| 来源: 网络整理| 查看: 265

❮ 上一节 下一节 ❯ C# 构造函数 构造函数

构造函数是用于初始化对象的特殊方法。构造函数的优点是在创建类的对象时调用它。它可用于设置字段的初始值:

实例

创建一个构造函数:

// 创建 Car 类 class Car { public string model; // 创建一个字段 // 为 Car 类创建一个类构造函数 public Car() { model = "Mustang"; // 设置 model 的初始值 } static void Main(string[] args) { Car Ford = new Car(); // 创建 Car 类的对象(这将调用构造函数) Console.WriteLine(Ford.model); // 打印 model 的值 } } // 输出 "Mustang"

运行实例 »

请注意,构造函数名称必须与类名匹配,并且不能有返回类型(如void或int)。

还要注意,在创建对象时会调用构造函数。

默认情况下,所有类都有构造函数:如果您不自己创建类构造函数,C# 将为您创建一个。但是,您不能为字段设置初始值。

节省开发者时间! 看看这一页的最后一个例子来真正理解原因。

构造函数参数

构造函数还可以接受参数,用于初始化字段。

下面的示例向构造函数添加一个字符串参数string modelName。在构造函数中,我们将model设置为modelName(model=modelName)。当我们调用构造函数时,我们将一个参数传递给构造函数("Mustang"),它将model的值设置为"Mustang":

实例 class Car { public string model; // 创建一个带参数的类构造函数 public Car(string modelName) { model = modelName; } static void Main(string[] args) { Car Ford = new Car("Mustang"); Console.WriteLine(Ford.model); } } // 输出 "Mustang"

运行实例 »

您可以有任意多个参数:

实例 class Car { public string model; public string color; public int year; // 创建具有多个参数的类构造函数 public Car(string modelName, string modelColor, int modelYear) { model = modelName; color = modelColor; year = modelYear; } static void Main(string[] args) { Car Ford = new Car("Mustang", "Red", 1969); Console.WriteLine(Ford.color + " " + Ford.year + " " + Ford.model); } } // 输出 Red 1969 Mustang

运行实例 »

提示: 与其他方法一样,构造函数可以通过使用不同数量的参数来重载。

节省开发者时间

考虑上一章中的示例时,您会注意到构造函数非常有用,因为它们有助于减少代码量:

Without constructor:

Program.cs class Program { static void Main(string[] args) {     Car Ford = new Car(); Ford.model = "Mustang"; Ford.color = "red"; Ford.year = 1969;     Car Opel = new Car(); Opel.model = "Astra"; Opel.color = "white"; Opel.year = 2005;     Console.WriteLine(Ford.model); Console.WriteLine(Opel.model);   } }

运行实例 »

With constructor:

Program.cs class Program { static void Main(string[] args) {     Car Ford = new Car("Mustang", "Red", 1969); Car Opel = new Car("Astra", "White", 2005);     Console.WriteLine(Ford.model); Console.WriteLine(Opel.model);   } }

运行实例 »

❮ 上一节 下一节 ❯


【本文地址】


今日新闻


推荐新闻


CopyRight 2018-2019 办公设备维修网 版权所有 豫ICP备15022753号-3