当前位置: 首页 > 图文教程 > 网络编程 > ASP.NET > asp.net get set用法

ASP.NET
谈谈ASP.net2.0中App_GlobalResources的用途
.Net Framework 4.0 功能介绍
ASP.NET教程:浅谈Asp.net实现的邮件发送引擎
ASP.NET教程:绝对路径与相对路径的拼合方法
ASP.NET开发电子商务网站学习经验
ASP.NET与PHP构建web程序的方法的优缺点
ASp.NET教程:页面传值的五种方法
ASP.NET教程:数据缓存和输出缓存
ASP.NET比拼PHP的测试环境
ASP.NET MVC 2的客户端验证扩展
ASP.NET实例:无刷新的文件上传
ASP.NET实例: GridView删除时弹出确认对话框
ASP.NET获取不到js写的cookie解决方法
ASP.NET MVC教程:数据库表的增删改
ASP.NET教程:form验证用户登录的Cookie
如何让.NET程序脱离.NET框架
ASP.NET开发网站程序常见错误汇总
C#教程:匿名类型和隐式类型变量的区别
C#3.0教程:自动属性和扩展方法
使用XmlDocument读取XML节点所有数据

ASP.NET 中的 asp.net get set用法


出处:互联网   整理: 软晨网(RuanChen.com)   发布: 2009-10-11   浏览: 88 ::
收藏到网摘: n/a

属性的定义和使用 属性由两个部分组成:属性头和存储器。存储器分为get访问器和set访问器。声明属性的一般形式为: 修饰符 类型 属性名 在早期学习c#的过程中,经常遇到这样的语句:
public string StudentName
{
get{return stuName;}
set{stuName=value;}
}
当时也不是很明白为什么要这样?学深了c#后,又没法对其做一个总结。今天看了《Visual c#.net程序设计教程》这本书,总结得不错,做下笔记:
在许多面向对象程序设计语言中,属性(property)是指对象的特征和状态,具体地说就是指对象的数据成员。程序员可以指定数据成员能否被外界直接访问,如果数据成员被指定为public的,外界就可以用“对象名.公有数据成员名”访问该成员。c#是完全面向对象的语言,c#倡导一种新途径,对数据成员能够更好地封装和保护,同时又向外界提供更有效的访问形式。c#中用来达到这个目标的就是“属性”,而那些数据成员,在c#中称为“字段”或“域”。
属性的定义和使用
属性由两个部分组成:属性头和存储器。存储器分为get访问器和set访问器。声明属性的一般形式为:
修饰符 类型 属性名
{
get //get存取程序
{...}
set //set存取程序
{...}
}
属性的修饰符可以是任何访问控制符,还可以被定义为静态。get和set是一种特定的方法,get用来从对象中读取数据,而set用来向字段写入数据,将外界的数据写入字段时,c#使用value表示输入的数据,value可以说是一个准关键字,例如:
set{aField=value;}
以下是一个简单的例子,演示了属性的基本形式和用法:
using System;
using System.Collections.Generic;
using System.Text;
namespace 属性的用法
{
public class Student
{
private string stuName = "阿会楠";
public string studentName
{
get { return stuName; }
set { stuName = value; }
}
}
class Program
{
static void Main(string[] args)
{
Student stu = new Student();
Console.Write(stu.studentName);
Console.ReadKey();
}
}
}
上面代码中定义了一个属性studentName,它包含get访问器和set访问器。属性studentName封装了类Student中的字段stuName,字段如果没有加访问控制符,被默认为private,外界不能直接访问它,现在外界可以通过studentName属性自由地存取stuName字段了。
属性的get和set都是可执行的程序语句组合,具有行为的特点;而使用具有get访问器和set访问器的属性时候就像使用字段一样,即可以作为左值接受数据,又可以作为右值输出数据,系统正是按照属性出现在语句中的位置,自动地选择是调用get还是调用set。
属性的定义和使用 属性由两个部分组成:属性头和存储器。存储器分为get访问器和set访问器。声明属性的一般形式为: 修饰符 类型 属性名
属性的读写控制
属性中的get和set可以只用一个,如果只有get而没有set,那么这个属性只可读出,不可写入;如果只有set而没有get,那么这个属性是只写入,不可读出。
在属性中完成更多功能
既然get和set是程序,那当然可以做更多的事情。一个合理的分工是:设计字段是为了便于内部方法使用,而尽量与外界隔绝;设计属性考虑的是方便外界的使用,但是不让外界知道的数据一律不给。
最后给一个例子:
复制代码 代码如下:

using System;
using System.Collections.Generic;
using System.Text;
namespace 属性的用法
{
public class Student
{
private string stuCollege = "jyu";//学校名称不可修改
private string stuName = "阿会楠";
private int stuAge = 22;
public string studentName
{
get { return stuName; }
set { stuName = value; }
}
public int studentAge
{
get { return stuAge; }
set { stuAge = value; }
}
public string studentCollege
{
get { return stuCollege; }
}
public string studentInfo
{
get { return "学校:" + stuCollege + "名字:" + stuName + "岁数:" + stuAge;}
}
}
class Program
{
static void Main(string[] args)
{
Student stu = new Student();
Console.Write(stu.studentCollege + "\n");
stu.studentAge = 25;
Console.Write(stu.studentInfo);
Console.ReadKey();
}
}
}

输出结果是:
.net get set用法