You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

Android开发中应使用实例变量还是将变量作为参数传入方法?

两种实现方案的优劣势及选型建议

两种写法本身语法都合法,没有绝对的对错,只看适用场景:

  • 第一种(依赖实例变量的无参sum())
    优点:调用时无需传参,代码更简洁,适合方法定位就是专门计算当前类固定两个成员变量之和的场景。
    缺点:方法和类实例状态强耦合,复用性极低,只要有其他求和需求就用不了;另外如果实例变量被其他逻辑修改,方法返回值不可控,排查问题时很难定位结果异常的原因,也不方便做独立单元测试。
  • 第二种(参数传入的带参sum(int number1, int number2))
    优点:属于纯函数,输出完全由输入参数决定,没有外部依赖,复用性极强,任意两个int值求和都可以调用;结果可预期,调试只需核对入参即可快速定位问题,也非常容易写单元测试用例。
    缺点:调用时需要手动传入两个参数,几乎没有其他额外弊端。

通用场景下优先选择第二种传参实现,只有你能100%确定该方法永远只会用于计算当前类固定两个实例变量的和、不会有其他复用需求的时候,才可以考虑第一种实现。

参考代码示例:

int number1;
int number2;

@Override
protected void onCreate(Bundle savedInstanceState) {
    super.onCreate(savedInstanceState);
    setContentView(R.layout.activity_main);

    number1 = 10;
    number2 = 20;

    // 调用第一种方案
    sum();

    // 调用第二种方案
    sum(number1,number2);
}

// 第一种方案
private int sum(){
   return number1+number2;
}

// 第二种方案
private int sum(int number1,int number2){
    return number1+number2;
}

内容的提问来源于stack exchange,提问作者user15033829

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.09.29 00:36:06