我是C#的新手,只是一个关于使用静态方法的设计思想的问题。例如,我们知道Char是struct并具有以下静态方法:
public static bool IsDigit(Char c);
因此,当我们检查字符是否为数字时,我们可以进行编码:
char myChar = '8';
if (char.IsDigit(myChar)) {
...
}
但是为什么语言实施者会做出这个特定的设计决定?他们还可以将其设置为非静态,例如:
public bool IsDigit();
所以我们可以这样编码:
char myChar = '8';
if (myChar.IsDigit()) {
...
}
答案 0 :(得分:-1)
我们通常使用静态方法来定义实用程序功能(它们是不需要实例的功能)。如果该函数不是实用程序函数,则将其设为实例方法