C#get Set

来源:互联网 发布:张思然淘宝店名字 编辑:程序博客网 时间:2024/05/22 05:28

文章借鉴,自学使用!源地址http://www.csharpwin.com/csharpspace/3928r4336.shtml


下面是笔者总结的C# get方法学习笔记,从多方面介绍了运用C# get方法,从简单的原理,到发杂的应用。

    C#中属性是类,接口,结构的命名成员,可以通过C# get set访问器访问私有成员.如

  1. public class Animal
  2. {
  3. privatestringname;
  4. public string Name
  5. get
  6. {
  7. return name;
  8. }
  9. set
  10. {
  11. name = value;
  12. }
  13. }

    通常属性名称与要访问的内部成员名称相同,但是第一个字母要大写,如Name,
否则内部成员要带一个_前缀

    set中的隐式参数value具有基础成员变量的类型(就是属性类型).

  1. class TestAnimal{ static void Main() { Animal animal = new Animal(); animal.Name = "Lion"; // set
  2. System.Console.WriteLine(animal.Name); // get }}
    在TestAnimal类中可以通过Name的C# get,set方法巧妙的访问和设置Animal类的私有成员name.如果一个属性仅有C# get 访问器,则它为只读属性。如果它仅有 set 访问器,则为只写属性。如果它同时具有这两种访问器,则为读写属性。C# get访问器中,必须在return或throw中中止,C# get访问器中更改对象的状态是一种错误的编程样式.如
 
  1. public int Nember
  2. {
  3. return nember++;//别这样做
  4. }

    但是返回字段值,或计算字段值返回如

 
  1. publicstring Name
  2. {
  3. return name !=null ? name : "N/A" ;
  4. }
  5. using System;public class BaseClass
    {private string name;public string Name
    { get { return name; } set { name = value; }}}
 

    访问基类中被派生类同一名称的属性覆盖的属性,以上介绍C# get方法。