文档章节

C# 类-->函数成员-->属性

智能小松鼠
 智能小松鼠
发布于 2017/01/10 14:22
字数 332
阅读 20
收藏 0

属性(property)的概念是:它是一个方法或一对方法,在客户端代码看来,它(们)是一个字段。

//C#中定义属性
public string SomeProperty
{
   get{
      return "This is the property value."; 
   }
   set{}
}

get访问器不带任何参数,且必须返回属性声明的类型。也不应为set访问器指定任何显示参数,单宾衣旗假定它带一个参数,其类型也与属性相同,并表示为value。

//age表示属性Age的后备变量
private int age;
public int Age
{
     get{
           return age;
     }
     set{
           age=value;
     }
}

<只读和只写属性>

在属性定义中省略set访问器,就可以创建只读属性。

private string name;
public string Name
{
   get
   {
       return Name;
   }
}

<属性的访问修饰符>

C#允许给属性的get和set访问器设置不同的访问修饰符,所以属性可以有公有的get访问器和私有或受保护的set访问器。这有助于控制属性的设置方式或时间。

public string Name
{
   get{
      return _name; 
   }
   private set
   {
      _name = value;
   }
}

<自动实现的属性>

如果属性的set和get访问器中没有任何逻辑,就可以使用自动实现的属性。这种属性会自动实现后备成员变量。

public int Age{get;set}
public int Age{get;}

public int Age{get; private set;}

 

© 著作权归作者所有

上一篇: wordpress页面
下一篇: vs2010额外安装iis
智能小松鼠
粉丝 311
博文 356
码字总数 37236
作品 0
海淀
QA/测试工程师
私信 提问
[C/C++]属性的秘密——C++仿C#的属性实作

一直以来,我都想为C++引入C#里面定义的属性(Property),我尝试了几次: [C/C++]一个实现反射和事件绑定的例子 [C/C++]一个实现反射和事件绑定的例子 (增强版) [C/C++]模仿C#实作C++版属性...

梁欢
2013/11/10
1K
0
C#学习笔记(基本语法)

C# 是一种面向对象的编程语言。在面向对象的程序设计方法中,程序由各种相互交互的对象组成。相同种类的对象通常具有相同的类型,或者说,是在相同的 class 中。 例如,以 Rectangle(矩形)...

四十是似时
2017/11/19
0
0
【《Effective C#》提炼总结】提高Unity中C#代码质量的21条准则

作者:Williammao, 腾讯移动客户端开发工程师 商业转载请联系腾讯WeTest获得授权,非商业转载请注明出处。 原文链接:http://wetest.qq.com/lab/view/290.html WeTest 导读 我们知道,在C++...

冰冰燕
2017/03/02
0
0
C# GET 和 SET作用

C#中get和SET,看来看去还是看不懂,通俗一点解释一下,用了有什么好处,不用会怎么样 如果你这样写是没有什么不一样的. private int Old; public int Old{ get{return Old;} set{Old = val...

bigSoul
2017/07/01
0
0
.NET程序员学PHP要注意的坑-OOP 魔术方法

<?php / PHP OOP 魔术方法 XXX.class.php类文件取名,XXX.interface.php php文件都不要最后的?>结束符,混合到html后会干扰到html输出流 final标识同C#的sealed,标识类或方法不能被继承 abst...

SethFeng
2015/12/03
39
0

没有更多内容

加载失败,请刷新页面

加载更多

经典系统设计面试题解析:如何设计TinyURL(二)

原文链接:https://www.educative.io/courses/grokking-the-system-design-interview/m2ygV4E81AR 编者注:本文以一道经典的系统设计面试题:《如何设计TinyURL》的参考答案和解析为例,帮助...

APEMESH
39分钟前
7
0
使用logstash同步MySQL数据到ES

概述   在生成业务常有将MySQL数据同步到ES的需求,如果需要很高的定制化,往往需要开发同步程序用于处理数据。但没有特殊业务需求,官方提供的logstash就很有优势了。   在使用logstas...

zxiaofan666
49分钟前
9
0
X-MSG-IM-分布式信令跟踪能力

经过一周多的鏖战, X-MSG-IM的分布式信令跟踪能力已基本具备, 特点是: 实时. 只有要RX/TX就会实时产生信令跟踪事件, 先入kafka, 再入influxdb待查. 同时提供实时sub/pub接口. 完备. 可以完整...

dev5
59分钟前
6
0
OpenJDK之CyclicBarrier

OpenJDK8,本人看的是openJDK。以前就看过,只是经常忘记,所以记录下 图1 CyclicBarrier是Doug Lea在JDK1.5中引入的,作用就不详细描述了,主要有如下俩个方法使用: await()方法,如果当前线...

克虏伯
今天
6
0
实战项目-学成在线(八)

在前后端分离架构中,服务层被拆分成了很多的微服务,微服务的信息如何管理?Spring Cloud中提供服务注册中心来管理微服务信息。 注册中心作用: 1、微服务数量众多,要进行远程调用就需要知...

lianbang_W
今天
6
0

没有更多内容

加载失败,请刷新页面

加载更多

返回顶部
顶部