1、自动属性
//-----vs2005-----
class Person
{
private string firstName;
private string lastName;
private int age;
public string FirstName
{
get { return firstName; }
set { firstName = value; }
}
public string LastName
{
get { return lastName; }
set { lastName = value; }
}
public int Age
{
get { return age; }
set { age = value; }
}
}
//----vs2008-----
class Person
New
{
public string FirstName { get; set; }
public string LastName { get; set; }
public int Age { get; set; }
}
自动属性的典型适用场合:
在属性代码中只包含基本的赋值取值功能
简单的实体类
使用自动属性时,需要注意以下几点:
自动属性不能实现只读或者只写属性
因为没有声明私有变量,你在使用自动属性时只能直接使用属
性名进行引用
2. 对象初始化器
3. 集合初始化器:----使集合可以像数组一样的初始化;
4. 扩展方法
使用扩展方法时,请注意:
在一个静态类中定义需要的扩展方法
如果上面定义的扩展方法位于不同的命名空间,使用时记住用
using
语句引用过来
当类本身的方法与扩展方法同名时,优先类本身的方法
使用扩展方法时,需要注意以下几点:
扩展方法允许我们对已存在类型的行为进行扩展
扩展方法是一种特殊的静态方法
扩展方法必须在静态类中定义
扩展方法的优先级低于同名的类方法
扩展方法只在特定的命名空间内有效
除非必须不要滥用扩展方法
class Program
{
static void Main(string[] args)
{
Person p = new Person
{
FirstName = "小刘",
LastName = "小流",
Age = 28
};
p.FirstName.SayHi();
Console.ReadLine();
}
}
static class TestExtMethod
{
public static void SayHi(this string name)
{
Console.WriteLine("你好!"+name);
}
}
5.推断类型
使用关键字
var
时,需要注意以下几点:
定义变量时,必须同时完成初始化工作
不允许用
var
定义一个以
null
值初始化的局部变量
var
本身不是一个新类型,本质上,它只是用来修饰一个可以
推断出类型的局部变量
6.匿名类
分享到:
相关推荐
vs2008新特性:c# 4.0新特性一览 回顾C#发展历史C#1.0完全是模仿Java并保留了C/C些特性如struct新学者很容易上手;C#2.0加入了泛型 也和Java1.5泛型如出辙;C#3.0加入了堆语法糖并在没有修改CLR情况下引入了Linq...
这是vs2008的新特性.更方便用户开发.
C#4.0的一些新特性 C#4.0的一些新特性
《果壳中的C#:C#5.0权威指南》通过26章的内容,系统、全面、细致地讲解了C#5.0从基础知识到各种高级特性的命令、语法和用法。《果壳中的C#:C#5.0权威指南》的讲解深入浅出,同时为每一个知识点都专门设计了贴切、...
C# 4.0 的4个新特性C# 4.0 的4个新特性C# 4.0 的4个新特性C# 4.0 的4个新特性
C#2.0新特性C#2.0新特性
C#4.0和VS2010新特性 C#4.0和VS2010新特性
VS2008下c#3.0新特性之var源码
其中记录了C#6.0中的新特性
该CHM介绍了c#2.0的一些新语法特性
《Effective C#:改善C#代码的50个有效方法》在本书中,世界知名的.NET专家Bill Wagner先生给出了50条建议,告诉你怎样充分利用C# 6.0所具备的特性来编写健壮而高效的代码。这些建议反映了C#开发界的新进展,也令...
它提供了一系列的面向对象特性,如封装、继承和多态,可以帮助开发者更好地组织和管理代码。同时,它还提供了面向过程编程的灵活性,使得开发者可以按照需求选择适合的编程风格。 其次,C#具备卓越的类型安全性和...
C#6.0新特性Demo
c# 4.0新特性一览PPT c# 4.0新特性一览PPT
C# 3.0 3.5 新特性 总结 最新在网上好不容易搜集的资料。
c#中的特性(attribute)+反射的一个例子
C# 自定义特性 例子
Visual Studio 2008开发新特性系列课程(2):C#3.0与VB9.0的新特性介绍
Microsoft Visual C# 3.0作为Visual Studio 2008...在VS Managed Languages团队,我们一直努力创建该语言的下一个版本(没什么惊喜,就是C# 4.0),而这个文档是我们现在所看到的、计划中的语言特性的第一个公开描述。