c# 类中字段属性设计

简介:

c# 类中字段属性设计

1、当把属性设计成private set时,表示在外部类中就不能对该属性赋值。如

public   class  A
     {
         string  pwd;
         public  event  EventHandler PasswordChanging;
 
         public  string  Pwd
         {
             get  { return  pwd; }
             private  set
             {
                 if  ( string .IsNullOrEmpty(value))
                 {
                     throw  new  ArgumentException( "password cannot be empty" );
                 }
                 if  (pwd != value)
                 {
                     if  (PasswordChanging != null ) PasswordChanging( this , EventArgs.Empty);
                 }
                 pwd = value;
             }
         }
 
         void  Test()
         {
             this .pwd = "abc" ;                 // 直接赋值,什么额外事情都不会发生
               this .Pwd = "efg" ;                 // 可以引发密码更改事件,可以进行校验
         }
     }

 引用CSDN

 

属性的设计,更新中....


本文转自Work Hard Work Smart博客园博客,原文链接:http://www.cnblogs.com/linlf03/archive/2012/03/30/2425913.html,如需转载请自行联系原作者

目录
相关文章
|
开发框架 .NET C#
C#|.net core 基础 - 删除字符串最后一个字符的七大类N种实现方式
【10月更文挑战第9天】在 C#/.NET Core 中,有多种方法可以删除字符串的最后一个字符,包括使用 `Substring` 方法、`Remove` 方法、`ToCharArray` 与 `Array.Copy`、`StringBuilder`、正则表达式、循环遍历字符数组以及使用 LINQ 的 `SkipLast` 方法。
400 8
|
存储 C# 索引
C# 一分钟浅谈:数组与集合类的基本操作
【9月更文挑战第1天】本文详细介绍了C#中数组和集合类的基本操作,包括创建、访问、遍历及常见问题的解决方法。数组适用于固定长度的数据存储,而集合类如`List<T>`则提供了动态扩展的能力。文章通过示例代码展示了如何处理索引越界、数组长度不可变及集合容量不足等问题,并提供了解决方案。掌握这些基础知识可使程序更加高效和清晰。
238 6
|
11月前
|
存储 安全 编译器
学懂C#编程:属性(Property)的概念定义及使用详解
通过深入理解和使用C#的属性,可以编写更清晰、简洁和高效的代码,为开发高质量的应用程序奠定基础。
826 12
|
安全 C# 索引
C#一分钟浅谈:属性与索引器的定义
本文深入浅出地介绍了C#编程中的属性和索引器。属性让字段更安全,通过访问器方法在读写时执行额外操作,如验证数据有效性;索引器则赋予类数组般的访问方式,支持基于索引的数据访问模式。文章通过示例代码展示了如何定义及使用这两种特性,并提供了常见问题及其解决方案,帮助读者写出更健壮、易维护的代码。希望读者能从中学习到如何有效利用属性和索引器增强C#类的功能性。
283 12
|
C# 数据安全/隐私保护
C# 一分钟浅谈:类与对象的概念理解
【9月更文挑战第2天】本文从零开始详细介绍了C#中的类与对象概念。类作为一种自定义数据类型,定义了对象的属性和方法;对象则是类的实例,拥有独立的状态。通过具体代码示例,如定义 `Person` 类及其实例化过程,帮助读者更好地理解和应用这两个核心概念。此外,还总结了常见的问题及解决方法,为编写高质量的面向对象程序奠定基础。
199 4
|
Java 程序员 C#
【类的应用】C#应用之派生类构造方法给基类构造方法传参赋值
【类的应用】C#应用之派生类构造方法给基类构造方法传参赋值
116 0
|
存储 安全 编译器
C#中的属性
C#中的属性
124 7
|
索引 C语言 存储
【C语言】B树和B+树的解析应用
【C语言】B树和B+树的解析应用
172 0
【C语言】B树和B+树的解析应用
C#中的类和继承
C#中的类和继承
105 6
|
开发框架 .NET 编译器
C# 中的记录(record)类型和类(class)类型对比总结
C# 中的记录(record)类型和类(class)类型对比总结
391 0