在Kotlin中创建一个抽象类的实例

Slo*_*nho 76 kotlin

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

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

    }

    override fun onFinish() {

    }
}
Run Code Online (Sandbox Code Playgroud)

它抛出了错误:

Cannot create an instance of an abstract class.
Run Code Online (Sandbox Code Playgroud)

基本上我正在尝试创建CountDownTimer的实例,并且无法弄清楚如何将其转换为Kotlin.

这是Java中的代码:

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

    }

    @Override
    public void onFinish() {

    }
};
Run Code Online (Sandbox Code Playgroud)

Kot*_*921 146

您可以使用此方法:

var variableName = object: CountDownTimer(...){
    ...
}
Run Code Online (Sandbox Code Playgroud)

  • 对于那些好奇的人来说,这些被称为Kotlin中的"对象表达".文档可在此处获取:https://kotlinlang.org/docs/reference/object-declarations.html (35认同)