我是C#的新手,我找不到合适的搜索内容.我试图理解这三种语法之间的区别:
public string Topic(){}public class Topic{}public string Topic{}我知道第一个是一个功能而第二个是一个类,但让我困惑的是第三个是什么.
什么#3叫做以及如何使用?
任何可以提供清晰度的东西.
第三是财产.C#中最常见的表示形式是自动生成的属性,如下所示:
public string Topic { get; set; }
Run Code Online (Sandbox Code Playgroud)
这相当于:
private string _topic;
public string Topic
{
get { return _topic; }
set { _topic = value; }
}
Run Code Online (Sandbox Code Playgroud)
它应该用于保存对象的内部状态.
它可以是只读属性,仅限getter:
public string Topic { get; }
Run Code Online (Sandbox Code Playgroud)
或者只有setter:
public string Topic { set; }
Run Code Online (Sandbox Code Playgroud)
您还可以在getter和setter中应用辅助功能修改器,例如:
public string Topic { protected get; private set; }
Run Code Online (Sandbox Code Playgroud)