1.在java中,要是定义两个同名方法,但是一个是可变参数的,一个的参数是固定的,当你在调用时,他会自动选择最匹配的一个;
public void function(int num,String str){
//....
}
public void function(int num,String...strs){
//....
}
main{
function(1,"1");
}
上面的执行结果是调用了第一个function,因为,她是“最匹配的”。
2.在play framework2.*的routes文件的配置中,也同样出现这个问题:
GET /projects/:projectId/costs/tax/wbs controllers.projects.costs.TaxController.listWBSInProject(projectId:Long)
GET /projects/:projectId/costs/tax/:tid controllers.projects.costs.TaxController.view(projectId:Long,tid:Long)
此时你在浏览器里输入/projects/2/costs/tax/wbs时,会调用第一个url,但是若是把这二者的位置上下颠倒,所以总是以最前面的一个为标准
3.待补充。。。