Java `foo()`和`foo(void)之间的区别`
在Java中,这两个函数声明之间有什么区别吗Java `foo()`和`foo(void)之间的区别`,java,methods,Java,Methods,在Java中,这两个函数声明之间有什么区别吗 public void foo() {/*...*/} public void foo(void) {/*...*/} 你可以找到这个问题的答案,但是对于C/C++。在这些语言中,这两种声明样式的存在是完全有意义的 但是在Java中,这有什么意义呢?后一种声明在Java中是非法的。不能声明这样的方法。您应该得到如下错误: Test.java:8: error: <identifier> expected public void
public void foo() {/*...*/}
public void foo(void) {/*...*/}
你可以找到这个问题的答案,但是对于C/C++。在这些语言中,这两种声明样式的存在是完全有意义的
但是在Java中,这有什么意义呢?后一种声明在Java中是非法的。不能声明这样的方法。您应该得到如下错误:
Test.java:8: error: <identifier> expected
public void foo(void) {/*...*/}
^
1 error
Test.java:8:错误:应为
公共void foo(void){/*…*/}
^
1错误
因此,这不仅没有意义——您根本找不到尝试使用这种样式的有效代码。您可以尝试
public void foo(Void v) {/*...*/}
“你凭什么认为这是编译的?”柯克沃尔很遗憾,我的老师……上帝在java中自由漫游。