WEB开发网
开发学院软件开发C语言 由C++转向C#需要注意的问题 阅读

由C++转向C#需要注意的问题

 2009-04-11 08:25:15 来源:WEB开发网   
核心提示: 我们可以在Employee类中添加一个Age属性,使客户可以很方便地获取和设置员工年龄这个类的成员: publicintAge { get { returnage; } set { age=value; } } 关健字value可以被属性隐性地使用,由C++转向C#需要注意的问题(6),如

我们可以在Employee类中添加一个Age属性,使客户可以很方便地获取和设置员工年龄这个类的成员: 

publicintAge
{
get
{
returnage;
}
set
{
age=value;
}
} 
关健字value可以被属性隐性地使用。如果编写如下的代码: 
Fred.Age=17; 
编译器将会把值17传递给value。 
通过只采用Get而不采用Set,我们可以为YearsServed创建一个只读的属性: 
publicintYearsServed
{
get
{
returnyearsServed;
}
}Accessors的使用
privatevoidRun()
{
EmployeeFred=newEmployee(25,101,7);
Console.WriteLine("Fred'sage:{0}",
Fred.Age);
Fred.Age=55;
Console.WriteLine("Fred'sage:{0}",
Fred.Age);
Console.WriteLine("Fred'sservice:{0}",
Fred.YearsServed);
//Fred.YearsServed=12;//是不被允许的
}

我们可以通过属性获取Fred的年龄,也可以使用这一属性设置年龄。我们虽然可以访问YearsServed属性获得它的值,但不能设置值。如果没有注释掉最后一行的代码,在编译时就会出错。 

如果以后决定从数据库中获取Employee的年龄,我们就只需要改变存取器的实现,而客户不会受到任何影响。 

数组 

C#提供了一个数组类,它比C/C++中传统的数组更智能化。例如,在C#中写数组时不会超出边界。此外,数组还有一个更智能的伙伴—ArrayList,可以动态地增长,管理对数组大小不断变化的需求。 

上一页  1 2 3 4 5 6 7 8 9 10  下一页

Tags:转向 需要 注意

编辑录入:爽爽 [复制链接] [打 印]
赞助商链接