kotlin - 在 Kotlin 中创建抽象类的实例

我是 Kotlin 的新手,我正在尝试在我的 Android 项目中使用它。我有这个代码:

public var oneTouchTimer: CountDownTimer = CountDownTimer(500, 100) {
    override fun onTick(l: Long) {

    }

    override fun onFinish() {

    }
}

它抛出了错误:

Cannot create an instance of an abstract class.

基本上我正在尝试创建一个 CountDownTimer 实例,但无法弄清楚如何将其转换为 Kotlin。

这是Java代码:

CountDownTimer oneTouchTimer = new CountDownTimer(500, 100) {
    @Override
    public void onTick(long l) {

    }

    @Override
    public void onFinish() {

    }
};

最佳答案

你可以使用这个方法:

var variableName = object: CountDownTimer(...){
    ...
}

这些在 Kotlin 中被称为“对象表达式”。文档可在此处获得:Object expressions

https://stackoverflow.com/questions/34143564/

相关文章:

kotlin - 覆盖 Kotlin 数据类的 getter

generics - Kotlin 泛型中 "*"和 "Any"之间的区别

syntax - Kotlin 中的变量名或扩展运算符之前的 Kotlin 星号运算符

kotlin - 我们何时应该在 Kotlin 上使用 run、let、apply、also 和 w

android - Kotlin Android 启动新 Activity

kotlin - "experimental"Kotlin协程可以在生产中使用吗?

java - Kotlin:等效于 KClass 的 getClass()

unit-testing - 如何在 Kotlin 中管理单元测试资源,例如启动/停止数据库连接或嵌

list - Kotlin:如何使用列表强制转换:未经检查的强制转换:kotlin.collecti

string - Kotlin - 如何正确连接字符串