eclipse自动补全功能的缺陷

这周在做一些代码的重构,在重构的过程中,踩了一个eclipse的大坑!这里记录一下

在eclipse里写java代码,你写好方法名字,再来个回车,eclipse会自动帮你把方法的参数给补全,补全的参数跟你在补全方法定义的参数名字“一致”,即我认为的效果是这样的

public void test01(Integer id,String name,Integer age){
    test02(id,name,age)
}
public void test02(Integer id,String name,Integer age){	
}

一般情况下,使用起来也是这种效果的。但是,eclipse的方法参数补全,是有缺陷的

public void test01(Integer id,String name,Integer age){
	Integer auctionId = 1001;
	test02(auctionId, name, age);
	
	Integer countNumber = 1001;
	test02(auctionId, name, age);
	
	int userId = 1;
	test02(auctionId, name, age);
}

public void test02(Integer id,String name,Integer age){
	
}

这test01方法,第三行,我调test02,理想中情况,是应该给我补全参数是 id和name、age,实际呢,给我补全的是auctionId!

然后我又试了其他的情况,发现,eclipse的补全规则,是模糊参数匹配,如果有多个参数符合条件,则就近定义原则,在调用方法距离最近的并且参数类型匹配的,权值最高!

想不通,为什么eclipse不是参数名精确匹配呢?就这个不起眼的问题,给我造成了好几个bug,还不好排查,只能肉眼去一个一个扫雷。我又试了idea,但是,idea是直接没补全参数的这个功能。。。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 2
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值