C#属性

来源:互联网 发布:怎么卸载java环境 编辑:程序博客网 时间:2024/06/01 18:10

属性:get { //读属性代码 } set { //写属性代码 } 
public class Person
{
private string name;
public string Name
{
   get{return  name;}
   set{ name=value;}
}
}
属性可以忽略get或set访问器,但是不能两个都忽略.
set访问器包含一个隐藏的参数value,该参数包含从客户代码传送过来的值.
公共属性及其底层类型最好使用相同的名称,因为它们之间的联系将很清晰.

字段使用camelCase(xxXxx),如dateOfBirth,而属性使用PacalCase(XxXxx),如DateOfBirth.一些开发人员喜欢在字段的开头使用下划线,如_Name,属性也应使用名词来命名.

c#通过属性特性读取和写入字段,而不直接读取和写入,以此来提供对类中字段的保护.

属性按可以访问的类型分为三种不同的类型:

一.读/写属性

    读/写属性是一个具有get()和set()访问器的属性.

  语法:  [访问修饰符] 数据类型 属性 
{
get{ };
set{ };
}

二.只读属性

    仅具有get()访问器属性称为只读属性.

语法: [访问修饰符] 数据类型 属性名

get{ };
}

三.只写属性

   仅具有set()访问器属性称为只写属性,不推荐使用只写属性.

语法: [访问修饰符] 数据类型 属性名
{
 set{ };
}

 例子:

1.Student类

using System;using System.Collections.Generic;using System.Text;namespace lession8{    class Student    {        private string name;        private int age;       public string Name        {            get { return name; }            set { name = value; }        }        public int Age        {            get{return age;}            set { age = value; }          }      }}

2.main

using System;using System.Collections.Generic;using System.Text;namespace lession8{    class Program    {        static void Main(string[] args)        {            Student s = new Student();            s.Name = "Tom";            s.Age = 20;            Console.WriteLine(s.Age);            Console.WriteLine(s.Name);            Console.ReadLine();        }    }}


原创粉丝点击