首页 / C# / c# – 了解自动实现的属性
c# – 了解自动实现的属性
内容导读
互联网集市收集整理的这篇技术教程文章主要介绍了c# – 了解自动实现的属性,小编现在分享给大家,供广大互联网技能从业者学习和参考。文章包含1279字,纯文字阅读大概需要2分钟。
内容图文
![c# – 了解自动实现的属性](/upload/InfoBanner/zyjiaocheng/765/00aa7e61f1e049ae80ef425ee87915d9.jpg)
我有使用自动实现的属性的简单类:
Public Class foo
{
public foo() { }
public string BarName {get; set;}
}
我显然在我的类中使用变量BarName,现在需要在设置属性值时添加逻辑(它必须全部为大写,如图).这是否意味着我现在需要为BarName创建一个私有变量,例如_BarName,并将我班级中使用的当前BarName变量更改为_BarName?
Public Class foo
{
public foo() {}
private string _BarName = "";
public string BarName
{
get {return _BarName;}
set {_BarName = Value.ToString().ToUpper();}
}
}
我正在努力确保我理解使用自动实现的属性的含义,以及当我/如果我需要更改某些内容时它会带来什么.我假设重构,如上所示,不是breaking的变化,因为该属性基本上保持不变;它只是在课堂上做了一些工作,以保持这种方式并添加所需的逻辑.
另一个可能更有意义的例子是我需要在使用setter或getter时调用某个方法;更多然后改变价值.
这似乎是设置属性的代码行和行的公平交易.
解决方法:
Does this mean that I need to now
create a private variable for BarName
是
and change the current BarName
variable used throughout my class
不要更改类中的其余代码以使用您创建的新私有变量. BarName作为一个属性,旨在隐藏私有变量(以及其他内容),以避免您考虑对代码的其余部分进行全面更改.
I am assuming that the refactoring, as
shown above, is not a breaking change
because the property is basically
staying the same; it just took a
little work to keep it that way and
add the needed logic.
正确.
内容总结
以上是互联网集市为您收集整理的c# – 了解自动实现的属性全部内容,希望文章能够帮你解决c# – 了解自动实现的属性所遇到的程序开发问题。 如果觉得互联网集市技术教程内容还不错,欢迎将互联网集市网站推荐给程序员好友。
内容备注
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 gblab@vip.qq.com 举报,一经查实,本站将立刻删除。
内容手机端
扫描二维码推送至手机访问。