编程语言
首页 > 编程语言> > 如何在Java中引用匿名类实例?

如何在Java中引用匿名类实例?

作者:互联网

我想知道是否有可能(以及如何)引用Java中的匿名类实例.

示例代码:

final Handler handler = new Handler();

handler.post(new Runnable() {
    @Override
    public void run() {
        new Task() {
            @Override
            public void onTaskFinish() {
                handler.post(?); // what should go here?
            }
        }.execute()
    }
});

解决方法:

如果您也是JavaScript编码者,那么我敢打赌,您不需要问这个问题:)有一种简单的方法来实现您想要的功能(由于它周围的特殊语义,它恰好是一个重要的JavaScript习惯用法).

handler.post(new Runnable() {
    @Override
    public void run() {
        final Runnable self = this;
        new Task() {
            @Override
            public void onTaskFinish() {
                handler.post(self);
            }
        }.execute()
    }
});

标签:anonymous-class,java
来源: https://codeday.me/bug/20191028/1953752.html