gpt4 book ai didi

java - 接口(interface)是否应该包含自己的回调类?

转载 作者:行者123 更新时间:2023-11-30 00:54:52 25 4
gpt4 key购买 nike

如果我有一个带有多个回调的接口(interface),我希望将其作为一个完整的集合或单独使用。我可以简单地在界面内创建所需的类吗?还是应该将其设为静态并将其移至另一个类?

我在代码中的意思示例:

public interface SomeChangeListener {

void OnSomeChangeA();

void OnSomeChangeB();


class SomeCallback implements SomeChangeListener {

@Override
public void OnSomeChangeA() {}

@Override
public void OnSomeChangeB() {}
}}

这很好用,我只关心其中的任何缺陷,这在某些时候会导致问题。内存泄漏等...

如有任何提示,我们将不胜感激。谢谢。

最佳答案

将类定义放入接口(interface)中……不应导致内存泄漏。喜欢:从不。

或者换句话说:如果您设法放下导致某些内存泄漏的类定义,那么该泄漏是由您的代码正在执行的操作引起的。并不是因为它是属于这里或那里的某个类的某些字节码的一部分!

因此这里真正重要的缺陷是:通常,接口(interface)用于从具体实现创建抽象。将一个实现直接放入您的界面在某种程度上与该目标相矛盾!参见 here例如。

长话短说:你可以做到;但我认为它带有某种“不良设计”的味道。

关于java - 接口(interface)是否应该包含自己的回调类?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/40338635/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com