欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页

你是如何给在使用的方法增加参数的?

程序员文章站 2024-03-17 19:12:46
...

在我今天开发的时候,因为业务变动,需要给方法A增加一个参数,方法A在很多地方被使用,如何做才会改动最小。

有些人可能会说,重新写个方法;有的人说,直接在原来的方法A中增加一个参数。

例如:一个总价计算方法getTotal,该方法有两个参数,数量和单价:

public class CalcUtils {

    public static int getTotal(int num,int price){
        return num*price;
    }
}

但是突然由于业务变动,需要增加一个打折率作为参数。


联想到最近在看的spring源码中有大量重载的方法,突然想到了解决方法。同时也为我解了另外一个疑惑,为什么spring源码中有这么多重载的方法,例如:

你是如何给在使用的方法增加参数的?

例如上图中的getBean和doGetBean方法。为什么会有这么多重载的方法?


我们可以使用方法重载的方式,解决该问题!

增加一个重载的getTotal方法,将原来的CalcUtils类改为:

public class CalcUtils {

    public static int getTotal(int num,int price){
        return CalcUtils.getTotal(num, price, 0);
    }

    public static int getTotal(int num,int price,int discount){
        return price*num*(1-discount);
    }
}

无需改变原有调用的代码。