这些是一样的吗?
public void MyMethod() {do something}
public MyMethod() {do something}
void
意味着什么都不返回 - 所以留下这个关键词也意味着什么都不返回?如果是这种情况那么为什么这个词存在于语言中 - 是否在其他情况下使用?
答案 0 :(得分:7)
您的第二个选项无法编译。
C#规范要求每个方法在没有返回结果时也返回一个类型。
通过指定访问级别在类或结构中声明方法, 返回值,方法名称和任何方法参数。 ...
正如其他人所指出的,异常是类构造函数。
答案 1 :(得分:2)
您始终必须为方法指定返回类型,无论其void或类型如何。例外情况包括构造函数。
答案 2 :(得分:2)
你不能在C#
中做第二种情况,它不会编译。
在C#
中,您应该始终明确指定返回类型,即使它是“无”。
答案 3 :(得分:1)
将void
视为没有返回值的占位符,同时保持语法与返回类型的函数/方法兼容。
答案 4 :(得分:1)
第一行是public
实例方法。它只能在class
(或struct
)内部发生, c本身称为MyMethod
。
第二个示例是public
实例构造函数。它可以在class
内部发生,MyMethod
本身称为{{1}}(类的奇怪名称)。