我有一个班级,其存根如下所示.如果我不删除公共构造函数,代码分析会抱怨.但我很好奇为什么在密封课上这是必要的?下面显示的特定类仅包含静态方法.为什么包含私有构造函数只是为了删除公共构造函数是一种好习惯?
public sealed class ParseFile
{
/// <summary>
/// Remove the public constructor to satisfy CA1053.
/// </summary>
private ParseFile()
{
}
}
Run Code Online (Sandbox Code Playgroud)
小智 14
如果只有静态方法,则将其声明为静态类,并且不再担心构造函数.
public static class ParseFile
{
}
Run Code Online (Sandbox Code Playgroud)
如果您的类只有共享方法,为什么还需要创建它的实例?
System.Math类是仅具有共享方法的类的示例.它有一个私有构造函数,因为它没有任何好处(并且没有任何意义)它可以创建.
编辑:来源http://social.msdn.microsoft.com/Forums/en-US/vstscode/thread/8addbc70-f720-4d0b-85ce-2bdf52e32f77
问题是我为什么要私有化,但为什么要保持公开.始终授予所需的最低访问权限.
| 归档时间: |
|
| 查看次数: |
3678 次 |
| 最近记录: |