`foo()`和`foo(void)`之间的区别
在Java中,这两个函数声明之间有什么区别吗?
public void foo() {/*...*/} public void foo(void) {/*...*/}
在这里你可以找到这个问题的答案,但对于C / C ++ 。 在这些语言中,两种声明风格的存在都是完全合理的。
但是在Java中这有什么意义呢?
后者声明在Java中是非法的。 你不能声明这样的方法。 你应该得到这样的错误:
Test.java:8: error: expected public void foo(void) {/*...*/} ^ 1 error
所以不仅没有意义 – 你根本找不到试图使用这种风格的有效代码。
你可以试试
public void foo(Void v) {/*...*/}