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() {

    }
};

ベストアンサー1

次の方法を使用できます:

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

これらは Kotlin では「オブジェクト式」と呼ばれます。ドキュメントはここから入手できます:オブジェクト表現

おすすめ記事