首页 >> 民生历史

深入理解的五项主要改进覆盖

民生历史  2021-08-25 01:56 字号: 大 中 小

要表明您希望导入extension方法,只需在它们的命名空间中包括一个using指令。例如,要应用上面说明的方法,需要在类文件中包括一个using MyExtensionMethods指令:(列表B)

列表B

usingMyExtensionMethods;

namespace MyNamespace

{

public class MyClass

{

public MyClass()

{

string data = \"this is my data\";

//nospaces will contain \"thisismydata\".

string nospaces = Spaces();

}

}

}

注意extension方法的优先度比instance方法低。因此如果instance方法和extension方法有同样的签名,则应执行instance方法。

涉案海警人员有过度使用武力、违反交火规则之嫌。该匿名人士说 3.对象初始化器

在C# 2.0中,开发者认为建立许多构造器来设定某个属性值为对象初始化过程。下面是一个例子: 类访问Customer方法:

Customer myCustomer = new Customer(\"Zach\", \"Smith\");

Customer类构造器:

public Customer(string firstName, string lastName) : this()

{

rstName = firstName;

stName = lastName;

}

public Customer()

{}

C# 3.0介绍了一个初始化对象的新方法,它允许您在初始化对象时设定任何属性值。例如,在C# 3.0中,上面的代码块可以写成:

类访问Customer方法:

Customer myCustomer = new Customer{FirstName = \"Zach\", LastName = \"Smith\" };

Customer类构造器:

public Customer()

{}

在C# 3.0代码中,没有与初始化对象对应的构造器。这样,开发者就不用为每组需要设定的属性建立不同的构造器。

这样产生的另外一个效果是:代码变得更容易阅读了。例如,虽然我们清楚知道下面的代码对一个Car对象进行了初始化,但我们并不清楚其中变量的作用:

Car car = new Car(18, 10, 550);

一眼看来,下面这行代码更易阅读,尽管我们必须输入更多代码:

Car car = new Car { WheelDiameter = 18, WheelWidth = 10, Horsepower = 550 };

4.匿名类型

C# 2.0引入了匿名方法,C# 3.0推出匿名类型。匿名类型与匿名方法类似,它们都是以嵌入方式建立,并没有正式的名称。在建立一个匿名类型,您必须组合上述对象初始化器和隐型局部变量两个概念。下面是一个匿名类型的例子:

varmyType = new { Length = 79, Width = 30 };

查看本文来源

汕尾癫痫疾病医院
一品红药业
长沙男科哪家好
推荐资讯