如果我用错误的参数数量调用一个方法,我会得到一个简洁且描述性的错误信息
(^[] String/toUpperCase "foo" 2) 语法错误... 在类 java.lang.String 中调用方法 toUpperCase 预期 0 个参数,但接收到 1 个
如果我用错误的参数数量调用构造函数,我会得到一个非常类似的消息
(^[String] String/new "foo" 2) 语法错误... 在类 java.lang.String 中调用方法 java.lang.String 预期 1 个参数,但接收到 2 个
这条信息将类名作为方法引用,这感觉像是构造函数的错误信息。
我发现,如果我的构造函数的参数标签不正确,错误信息的措辞会略有不同(“期望找到与constructor相匹配的 1 个签名”而不是“与method相匹配”),所以我想趁着这些信息还记忆犹新时提出这个问题:参数数量错误信息的措辞是否应该提及“constructor”或“String/new”之类的词汇?