2

总是将 Activity 作为参数传递给方法是否昂贵?

你看,我有这个类(这是我把常用的方法放在我的活动中的地方)。而且我所有的方法都有 Activity 作为参数,因为这些方法的结果需要发送回调用该方法的活动,所以基本上我需要知道我应该将结果返回给谁,所以我总是有像:

public static void processThis(Activity activity){ 
// some Code
}

我只是想知道这是否违反最佳实践,或者使用起来是否昂贵?

谢谢。期待您的解释,这将启发我。

补充:我正在从我的活动中提取常用方法以促进代码重用。就像,ActivityA 使用 methodA 并将广播发送回 ActivityA,同样的方式适用于 ActivityB,它使用 methodB(与 methodA 相同)并将广播发送回 ActivityB。所以我想要实现的是提取基本相同的methodA和methodB,并将它们放入另一个类,并添加一个参数Activity,这样我就可以知道我需要将广播发回给谁。谢谢。

4

1 回答 1

6

在 Java 中,所有非原始参数都是隐式指针;因此,传递诸如activity之类的对象只需要传递Activity在内存中的地址,因此传递这样的东西在Java中并不是一件昂贵的事情。

因此,您应该问自己的真正问题不是它是否昂贵,而是它是否最有意义(从逻辑/可维护性的角度来看)。如果它有意义,那么一定要去做。

于 2012-11-11T10:19:27.483 回答