
一道C#程序题,本人刚学C#还请各位大侠帮忙!
1:publicclassStudent2:{3:privatestringname;4:publicstringName5:{6:get{returnthis.name...
1: public class Student
2: {
3: private string name;
4: public string Name
5: {
6: get { return this.name; }
7: set { this.name = value; }
8: }
9:
10: private int age;
11: public int Age
12: {
13: get { return this.age; }
14: set { this.age = value; }
15: }
16:
17: public Student(string name, int age)
18: {
19: this.name = name;
20: this.age = age;
21: }
22: }
我的问题是:3: private string name;
4: public string Name
5: {
6: get { return this.name; }
7: set { this.name = value; }
8: }这段话要表明一个什么含义,不写会怎么样? 展开
2: {
3: private string name;
4: public string Name
5: {
6: get { return this.name; }
7: set { this.name = value; }
8: }
9:
10: private int age;
11: public int Age
12: {
13: get { return this.age; }
14: set { this.age = value; }
15: }
16:
17: public Student(string name, int age)
18: {
19: this.name = name;
20: this.age = age;
21: }
22: }
我的问题是:3: private string name;
4: public string Name
5: {
6: get { return this.name; }
7: set { this.name = value; }
8: }这段话要表明一个什么含义,不写会怎么样? 展开
6个回答
展开全部
其实,这就是字段与属性的区别
private int age; //字段
public int Age{get;set;} //属性(我这里是3.5之后的简写方式,其实和你的属性定义是一样的)
字段是自己类访问的;属性是给别的程序调用的
属性是对字段安全性的保证。从何看出,别的程序调用,只能调用你的Age(属性),而不能调用age(字段)。所以,别人传递给你一个1000,那么人年龄一般来说不会有1000,所以我们就可以在属性中做一些修改,如果接受到一个超过100的数字,就把100赋值给Age。代码如下
public int Age
{
set
{
if(value>100)
this.name=100;
else
this.name=value;
}
}
总结一下,属性就是对字段安全性的保证。
展开全部
private string name; // 私有变量
public string Name
{get { return this.name; } // 如果外部需要得到name值,就需要加此句,get就是故名思义
set { this.name = value; } // 如果外部需要给name赋值,就需要加此句,set就是故名思义
}
public string Name
{get { return this.name; } // 如果外部需要得到name值,就需要加此句,get就是故名思义
set { this.name = value; } // 如果外部需要给name赋值,就需要加此句,set就是故名思义
}
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
c#属性
相当于以下2个函数
public string GetName()
{
return name;
}
public string SetName(string name)
{
this.name=name;
}
语法而已,记一下,用多了就习惯了
相当于以下2个函数
public string GetName()
{
return name;
}
public string SetName(string name)
{
this.name=name;
}
语法而已,记一下,用多了就习惯了
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
3-8表示封装字段
其中get和set获取和设置这个变量的。
可以在其中进行逻辑运算赋值。
其中get和set获取和设置这个变量的。
可以在其中进行逻辑运算赋值。
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
这东西是属性,访问的时候可以用 Student stu = new Student(); stu.Name=""; 如果不写那就木有这条属性咯. 不过属性可以被简写例如 public string Name {GET;SET;} 替代你的 (private..name; public...Name {}) 这段代码
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
2013-12-10
展开全部
字段封装,可以控制字段的访问权限:get只读,set可写
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询