gpt4 book ai didi

java - 在匿名类的接口(interface)中只实现一种方法

转载 作者:IT老高 更新时间:2023-10-28 13:47:34 26 4
gpt4 key购买 nike

是否可以在 Kotlin 中创建一个实现某个接口(interface)的匿名类并且只实现您需要的功能?例如,我想创建一个实现 AnimationListener 的类,它有 3 个方法:

  • onAnimationStart
  • onAnimationEnd
  • onAnimationRepeat

如果我只想使用 onAnimationEnd 回调,我可以这样做吗?

object : AnimationListener {
override fun onAnimationEnd() {
//my implementation
}
}

我在 Java 中这样做的方式是创建一个实现接口(interface)的类,只需创建该类的匿名类并覆盖我需要的方法。我希望 Kotlin 在这方面有更好、更简洁的方法。

最佳答案

我不认为 Kotlin 在这方面与 Java 有什么不同。但是,您可以创建自己的接口(interface),这些接口(interface)具有您不需要的方法的默认无操作实现:

interface AnimationEndListener : AnimationListener {
fun onAnimationStart() {}
fun onAnimationRepeat() {}
}

然后实际的具体实现将扩展 AnimationEndListener 并仅覆盖所需的内容。

关于java - 在匿名类的接口(interface)中只实现一种方法,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/43201257/

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