【发布时间】:2016-10-26 18:36:58
【问题描述】:
这更多是针对 Android 的最佳实践/性能相关问题。(我知道这可能是一个笼统的讨论,但考虑到 Android 环境,我希望缩小范围)。
假设我有一个方法(检查条件并将用户重定向到各种活动)。很多类都使用这种方法。
我无法决定是否在实用程序类中添加此方法,使其成为静态并从需要它的每个活动中调用它。
或者
创建一个基础活动,在其中添加方法,任何需要使用此方法的活动,都从基础活动继承。 (假设在这种特殊情况下我们可以使用单继承)。
想法?
编辑 这些是我检查过的与此相关的相关 SO 帖子。无法根据这些做出决定
If a "Utilities" class is evil, where do I put my generic code?
【问题讨论】:
-
我的建议是调用实用程序来完成您的工作,然后在您的活动中创建一个回调方法来响应结果,您的实用程序方法不应该知道 ui 元素
-
@SarthakMittal 谢谢。但我有兴趣知道是什么帮助您做出使用实用程序类而不是使用基础活动的决定,将方法移到那里并通过使用此方法的任何活动继承此类?
-
我通常将继承过程作为最后的手段,因为我们只能扩展一个类,如果只有一些类会使用该方法,最好使用接口,但是,如果你所有的活动都在进行需要方法然后创建一个基类就可以了
-
同意。单继承绝对是要考虑的事情。但是就像我在问题中提到的那样,我想知道这是否不是问题,还有哪些其他因素会影响我决定参加实用课程的决定。无论如何,这个链接对于得出结论非常有用 - javarevisited.blogspot.com/2013/06/…
标签: java android inheritance utility-method